...

Source file src/github.com/Microsoft/hcsshim/hcn/hcnv1schema_test.go

Documentation: github.com/Microsoft/hcsshim/hcn

     1  //go:build windows && integration
     2  // +build windows,integration
     3  
     4  package hcn
     5  
     6  import (
     7  	"encoding/json"
     8  	"testing"
     9  
    10  	"github.com/Microsoft/hcsshim"
    11  )
    12  
    13  func TestV1Network(t *testing.T) {
    14  	cleanup(NatTestNetworkName)
    15  
    16  	v1network := hcsshim.HNSNetwork{
    17  		Type: "NAT",
    18  		Name: NatTestNetworkName,
    19  		MacPools: []hcsshim.MacPool{
    20  			{
    21  				StartMacAddress: "00-15-5D-52-C0-00",
    22  				EndMacAddress:   "00-15-5D-52-CF-FF",
    23  			},
    24  		},
    25  		Subnets: []hcsshim.Subnet{
    26  			{
    27  				AddressPrefix:  "192.168.100.0/24",
    28  				GatewayAddress: "192.168.100.1",
    29  			},
    30  		},
    31  	}
    32  
    33  	jsonString, err := json.Marshal(v1network)
    34  	if err != nil {
    35  		t.Fatal(err)
    36  		t.Fail()
    37  	}
    38  
    39  	network, err := createNetwork(string(jsonString))
    40  	if err != nil {
    41  		t.Fatal(err)
    42  		t.Fail()
    43  	}
    44  
    45  	err = network.Delete()
    46  	if err != nil {
    47  		t.Fatal(err)
    48  		t.Fail()
    49  	}
    50  }
    51  
    52  func TestV1Endpoint(t *testing.T) {
    53  	cleanup(NatTestNetworkName)
    54  
    55  	v1network := hcsshim.HNSNetwork{
    56  		Type: "NAT",
    57  		Name: NatTestNetworkName,
    58  		MacPools: []hcsshim.MacPool{
    59  			{
    60  				StartMacAddress: "00-15-5D-52-C0-00",
    61  				EndMacAddress:   "00-15-5D-52-CF-FF",
    62  			},
    63  		},
    64  		Subnets: []hcsshim.Subnet{
    65  			{
    66  				AddressPrefix:  "192.168.100.0/24",
    67  				GatewayAddress: "192.168.100.1",
    68  			},
    69  		},
    70  	}
    71  
    72  	jsonString, err := json.Marshal(v1network)
    73  	if err != nil {
    74  		t.Fatal(err)
    75  		t.Fail()
    76  	}
    77  
    78  	network, err := createNetwork(string(jsonString))
    79  	if err != nil {
    80  		t.Fatal(err)
    81  		t.Fail()
    82  	}
    83  
    84  	v1endpoint := hcsshim.HNSEndpoint{
    85  		Name:           NatTestEndpointName,
    86  		VirtualNetwork: network.Id,
    87  	}
    88  
    89  	jsonString, err = json.Marshal(v1endpoint)
    90  	if err != nil {
    91  		t.Fatal(err)
    92  		t.Fail()
    93  	}
    94  
    95  	endpoint, err := createEndpoint(network.Id, string(jsonString))
    96  	if err != nil {
    97  		t.Fatal(err)
    98  		t.Fail()
    99  	}
   100  
   101  	err = endpoint.Delete()
   102  	if err != nil {
   103  		t.Fatal(err)
   104  		t.Fail()
   105  	}
   106  
   107  	err = network.Delete()
   108  	if err != nil {
   109  		t.Fatal(err)
   110  		t.Fail()
   111  	}
   112  }
   113  

View as plain text