macvlan_test.go 1.1 KB

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