diff --git a/.golangci.yml b/.golangci.yml index 6b9b260642f7024dac9c49f93ad26af496ccb780..71224fe1f71e1fca145e633cb68705d17b197dbf 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -11,11 +11,13 @@ run: - controller/forks - controller/test - controller/mocks - - models/generated/openconfig - - models/generated/arista + - models/ - forks/ + # ignore csbi, since we do not maintain it at the moment + - csbi/ - clab-gosdn_csbi_arista_base/ - - models/generated/arista + - plugins/examples/arista/generated + - plugins/examples/openconfig/generated skip-dirs-default: true skip-files: - http.go diff --git a/controller/northbound/server/plugin.go b/controller/northbound/server/plugin.go index 7ccdaf2fd5a65d8f967fa8b27b767ade17b96788..215a531a4fa1dfdbf93b09a8b096c757a25b99e2 100644 --- a/controller/northbound/server/plugin.go +++ b/controller/northbound/server/plugin.go @@ -31,7 +31,7 @@ func NewPluginInternalServer(pluginRegistryClient rpb.PluginRegistryServiceClien } func (pis *PluginInternalServer) AvailablePlugins(ctx context.Context, request *pipb.GetAvailablePluginsRequest) (*rpb.GetResponse, error) { - ctx, cancel := context.WithTimeout(context.Background(), time.Minute*1) + ctx, cancel := context.WithTimeout(ctx, time.Minute*1) defer cancel() getAllRequest := &rpb.GetAllRequest{ diff --git a/controller/northbound/server/test_util_test.go b/controller/northbound/server/test_util_test.go index df886d2967b30bfc5ebeba8720676bd25c551696..1edf907445eaae99841b11ae40b601311717ffca 100644 --- a/controller/northbound/server/test_util_test.go +++ b/controller/northbound/server/test_util_test.go @@ -29,7 +29,7 @@ const committedChangeID = "804787d6-e5a8-4dba-a1e6-e73f96b0119e" const mneID = "7e0ed8cc-ebf5-46fa-9794-741494914883" var hostname = "manfred" -var domainname = "uwe" + var pndUUID uuid.UUID var pluginUUID uuid.UUID var pendingChangeUUID uuid.UUID @@ -37,7 +37,6 @@ var committedChangeUUID uuid.UUID var mneUUID uuid.UUID var mockPnd *mocks.NetworkDomain var mockNetworkElement networkelement.NetworkElement -var pluginStore plugin.Store // Name of this file requires _test at the end, because of how the availability of varibales is handled in test files of go packages. // Does not include actual file tests! @@ -207,35 +206,16 @@ func createHashedAndSaltedPassword(plainPWD, salt string) string { func getMockPnd(t *testing.T) networkdomain.NetworkDomain { mockNetworkElement = &nucleus.CommonNetworkElement{ Plugin: &mocks.Plugin{}, - //Plugin: &openconfig.Device{ - // System: &openconfig.OpenconfigSystem_System{ - // Config: &openconfig.OpenconfigSystem_System_Config{ - // Hostname: &hostname, - // DomainName: &domainname, - // }, - // }, - //}, - UUID: mneUUID, + UUID: mneUUID, } - //sbi, err := nucleus.NewSBI(spb.Type_TYPE_OPENCONFIG, sbiUUID) - //if err != nil { - // t.Fatal(err) - //} - //mockNetworkElement.(*nucleus.CommonNetworkElement).SetSBI(sbi) mockNetworkElement.(*nucleus.CommonNetworkElement).SetTransport(&mocks.Transport{}) mockNetworkElement.(*nucleus.CommonNetworkElement).SetName(hostname) - //sbiStore = nucleus.NewSbiStore(pluginUUID) - //if err := sbiStore.Add(mockNetworkElement.SBI()); err != nil { - // t.Fatal(err) - //} mockPnd = &mocks.NetworkDomain{} mockPnd.On("ID").Return(pndUUID) mockPnd.On("GetName").Return("test") mockPnd.On("GetDescription").Return("test") - //mockPnd.On("GetSBIs").Return(sbiStore) - //mockPnd.On("GetSBI", mock.Anything).Return(mockNetworkElement.SBI(), nil) mockPnd.On("NetworkElements").Return([]uuid.UUID{mneUUID}) mockPnd.On("PendingChanges").Return([]uuid.UUID{pendingChangeUUID}) mockPnd.On("CommittedChanges").Return([]uuid.UUID{committedChangeUUID}) diff --git a/controller/nucleus/initialise_test.go b/controller/nucleus/initialise_test.go index 959028a3fb7a73f1eedd82541d10194b9a109a6e..b9cd0f98d0bbb7d3671a1896de275b52b3445c7e 100644 --- a/controller/nucleus/initialise_test.go +++ b/controller/nucleus/initialise_test.go @@ -172,7 +172,7 @@ func mockNetworkElement() networkelement.NetworkElement { } // TODO: return an error for pluginservice add!! -func newPnd() pndImplementation { +func newPnd() (*pndImplementation, error) { mockPlugin := &mocks.Plugin{} mockPlugin.On("ID").Return(defaultPluginID) mockPlugin.On("Unmarshal", mock.Anything, mock.Anything).Return(nil) @@ -187,6 +187,7 @@ func newPnd() pndImplementation { pluginService := NewPluginServiceMock() err := pluginService.Add(mockPlugin) if err != nil { + return nil, err } deviceService := NewNetworkElementService( @@ -195,14 +196,14 @@ func newPnd() pndImplementation { eventService, ) - return pndImplementation{ + return &pndImplementation{ Name: "default", Description: "default test pnd", pluginService: pluginService, networkElementService: deviceService, changes: store.NewChangeStore(), Id: defaultPndID, - } + }, nil } // removeTestGoStructs removes the plugins created during running the test in the current directory based on their name consisting of a uuid diff --git a/controller/nucleus/principalNetworkDomain_test.go b/controller/nucleus/principalNetworkDomain_test.go index 2528e48072282a4547a140e00467bac6e4750c05..5c306014b08734a4654aaf1e0badb35792a2b12b 100644 --- a/controller/nucleus/principalNetworkDomain_test.go +++ b/controller/nucleus/principalNetworkDomain_test.go @@ -19,7 +19,11 @@ import ( ) func TestNewPND(t *testing.T) { - p := newPnd() + p, err := newPnd() + if err != nil { + t.Fatal(err) + return + } type args struct { name string @@ -39,7 +43,7 @@ func TestNewPND(t *testing.T) { description: "default test pnd", pid: defaultPndID, }, - want: &p, + want: p, wantErr: false, }, } @@ -101,8 +105,11 @@ func Test_pndImplementation_AddNetworkElement(t *testing.T) { mockPlugin.On("Model").Return([]byte("mockModel"), nil) mockPlugin.On("Unmarshal", mock.Anything, mock.Anything).Return(nil) - pnd := newPnd() - err := pnd.pluginService.Add(mockPlugin) + pnd, err := newPnd() + if err != nil { + t.Fatal(err) + } + err = pnd.pluginService.Add(mockPlugin) if err != nil { t.Fatal(err) } @@ -140,7 +147,10 @@ func Test_pndImplementation_GetDescription(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - pnd := newPnd() + pnd, err := newPnd() + if err != nil { + t.Errorf("GetDescription() = %v", err) + } if got := pnd.GetDescription(); got != tt.want { t.Errorf("GetDescription() = %v, want %v", got, tt.want) } @@ -157,7 +167,10 @@ func Test_pndImplementation_GetName(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - pnd := newPnd() + pnd, err := newPnd() + if err != nil { + t.Errorf("GetName() = %v", err) + } if got := pnd.GetName(); got != tt.want { t.Errorf("GetName() = %v, want %v", got, tt.want) } @@ -185,11 +198,14 @@ func Test_pndImplementation_MarshalNetworkElement(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - pnd := newPnd() + pnd, err := newPnd() + if err != nil { + t.Error(err) + } mne := mockNetworkElement() - _, err := pnd.addNetworkElement(mne) + _, err = pnd.addNetworkElement(mne) if err != nil { t.Error(err) } @@ -226,11 +242,14 @@ func Test_pndImplementation_RemoveNetworkElement(t *testing.T) { tt := tt t.Run(tt.name, func(t *testing.T) { t.Parallel() - pnd := newPnd() + pnd, err := newPnd() + if err != nil { + t.Error(err) + } mne := mockNetworkElement() - _, err := pnd.addNetworkElement(mne) + _, err = pnd.addNetworkElement(mne) if err != nil { t.Error(err) } @@ -526,10 +545,14 @@ func Test_pndImplementation_RequestAll(t *testing.T) { //} func Test_pndImplementation_GetNetworkElement(t *testing.T) { - pnd := newPnd() + pnd, err := newPnd() + if err != nil { + t.Error(err) + return + } mne := mockNetworkElement() - _, err := pnd.addNetworkElement(mne) + _, err = pnd.addNetworkElement(mne) if err != nil { t.Error(err) return @@ -603,7 +626,11 @@ func Test_pndImplementation_GetNetworkElementByName(t *testing.T) { }, } - pnd := newPnd() + pnd, err := newPnd() + if err != nil { + t.Error(err) + return + } mockPlugin := mockPlugin(t) pluginModel, err := mockPlugin.Model() if err != nil {