ipvlan_test.go 1.2 KB

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