macvlan_test.go 1.3 KB

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