github.com/rawahars/moby@v24.0.4+incompatible/libnetwork/drivers/ipvlan/ipvlan_test.go (about)

     1  //go:build linux
     2  // +build linux
     3  
     4  package ipvlan
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/docker/docker/libnetwork/driverapi"
    10  )
    11  
    12  const testNetworkType = "ipvlan"
    13  
    14  type driverTester struct {
    15  	t *testing.T
    16  	d *driver
    17  }
    18  
    19  func (dt *driverTester) RegisterDriver(name string, drv driverapi.Driver,
    20  	cap driverapi.Capability) error {
    21  	if name != testNetworkType {
    22  		dt.t.Fatalf("Expected driver register name to be %q. Instead got %q",
    23  			testNetworkType, name)
    24  	}
    25  
    26  	if _, ok := drv.(*driver); !ok {
    27  		dt.t.Fatalf("Expected driver type to be %T. Instead got %T",
    28  			&driver{}, drv)
    29  	}
    30  
    31  	dt.d = drv.(*driver)
    32  	return nil
    33  }
    34  
    35  func TestIpvlanRegister(t *testing.T) {
    36  	if err := Register(&driverTester{t: t}, nil); err != nil {
    37  		t.Fatal(err)
    38  	}
    39  }
    40  
    41  func TestIpvlanNilConfig(t *testing.T) {
    42  	dt := &driverTester{t: t}
    43  	if err := Register(dt, nil); err != nil {
    44  		t.Fatal(err)
    45  	}
    46  
    47  	if err := dt.d.initStore(nil); err != nil {
    48  		t.Fatal(err)
    49  	}
    50  }
    51  
    52  func TestIpvlanType(t *testing.T) {
    53  	dt := &driverTester{t: t}
    54  	if err := Register(dt, nil); err != nil {
    55  		t.Fatal(err)
    56  	}
    57  
    58  	if dt.d.Type() != testNetworkType {
    59  		t.Fatalf("Expected Type() to return %q. Instead got %q", testNetworkType,
    60  			dt.d.Type())
    61  	}
    62  }