diff --git a/controller/nucleus/pluginFilesystemStore_test.go b/controller/nucleus/pluginFilesystemStore_test.go
index 253da7d73694cec8feaef320d51f40567af9d436..f5904a3e05aaac515b0341093d930de86ffa50ca 100644
--- a/controller/nucleus/pluginFilesystemStore_test.go
+++ b/controller/nucleus/pluginFilesystemStore_test.go
@@ -3,8 +3,8 @@ package nucleus
 import (
 	"testing"
 
-	spb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/southbound"
-	"code.fbi.h-da.de/danet/gosdn/controller/interfaces/southbound"
+	"code.fbi.h-da.de/danet/gosdn/controller/interfaces/plugin"
+	"code.fbi.h-da.de/danet/gosdn/controller/mocks"
 	"code.fbi.h-da.de/danet/gosdn/controller/store"
 	"github.com/google/uuid"
 )
@@ -14,129 +14,142 @@ func ensureStoreFilesForTestsAreRemoved() {
 	ensureStoreFileForTestsIsRemoved(store.NetworkElementFilenameSuffix)
 }
 
-func TestAddSbi(t *testing.T) {
+func TestAddPlugin(t *testing.T) {
 	defer ensureStoreFilesForTestsAreRemoved()
 
-	pndID, _ := uuid.Parse("b4016412-eec5-45a1-aa29-f59915357bad")
-	sbiStore := NewPluginStore(pndID)
+	pluginStore := NewPluginStore()
+	mockPlugin := &mocks.Plugin{}
 
-	sbiID, _ := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
-
-	sbi, _ := NewSBI(spb.Type_TYPE_OPENCONFIG, sbiID)
-
-	err := sbiStore.Add(sbi)
+	err := pluginStore.Add(mockPlugin)
 	if err != nil {
 		t.Error(err)
 	}
 }
 
-func TestGetAllSbis(t *testing.T) {
+func TestGetAllPlugins(t *testing.T) {
 	defer ensureStoreFilesForTestsAreRemoved()
 
-	pndID, _ := uuid.Parse("b4016412-eec5-45a1-aa29-f59915357bad")
-	sbiStore := NewPluginStore(pndID)
+	pluginStore := NewPluginStore()
 
-	sbiID1, _ := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
-	sbiID2, _ := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab")
-
-	sbi1, _ := NewSBI(spb.Type_TYPE_OPENCONFIG, sbiID1)
-	sbi2, _ := NewSBI(spb.Type_TYPE_OPENCONFIG, sbiID2)
+	mockPlugin1ID, err := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
+	if err != nil {
+		t.Error(err)
+	}
+	mockPlugin2ID, err := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab")
+	if err != nil {
+		t.Error(err)
+	}
+	mockPlugin1 := &mocks.Plugin{}
+	mockPlugin1.On("ID").Return(mockPlugin1ID)
+	mockPlugin2 := &mocks.Plugin{}
+	mockPlugin2.On("ID").Return(mockPlugin2ID)
 
-	inputSbis := [2]southbound.SouthboundInterface{sbi1, sbi2}
+	inputPlugins := [2]plugin.Plugin{mockPlugin1, mockPlugin2}
 
-	for _, sbi := range inputSbis {
-		err := sbiStore.Add(sbi)
+	for _, plugin := range inputPlugins {
+		err := pluginStore.Add(plugin)
 		if err != nil {
-			t.Error(err)
+			t.Error(plugin.ID().String())
 		}
 	}
 
-	returnSbis, err := sbiStore.GetAll()
+	returnPlugins, err := pluginStore.GetAll()
 	if err != nil {
 		t.Error(err)
 	}
 
-	length := len(returnSbis)
+	length := len(returnPlugins)
 	if length != 2 {
 		t.Errorf("GetAll() length of array = %v, want %v", length, 2)
 	}
 
-	for i, sbi := range returnSbis {
-		if sbi.ID != inputSbis[i].ID().String() {
-			t.Errorf("GetAll() = %v, want %v", sbi.ID, inputSbis[i].ID().String())
+	for i, sbi := range returnPlugins {
+		if sbi.ID != inputPlugins[i].ID().String() {
+			t.Errorf("GetAll() = %v, want %v", sbi.ID, inputPlugins[i].ID().String())
 		}
 	}
 }
 
-func TestGetSbi(t *testing.T) {
+func TestGetPlugin(t *testing.T) {
 	defer ensureStoreFilesForTestsAreRemoved()
 
-	pndID, _ := uuid.Parse("b4016412-eec5-45a1-aa29-f59915357bad")
+	pluginStore := NewPluginStore()
 
-	sbiStore := NewPluginStore(pndID)
-
-	sbiID1, _ := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
-	sbiID2, _ := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab")
-
-	sbi1, _ := NewSBI(spb.Type_TYPE_OPENCONFIG, sbiID1)
-	sbi2, _ := NewSBI(spb.Type_TYPE_OPENCONFIG, sbiID2)
+	mockPlugin1ID, err := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
+	if err != nil {
+		t.Error(err)
+	}
+	mockPlugin2ID, err := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab")
+	if err != nil {
+		t.Error(err)
+	}
+	mockPlugin1 := mockPlugin(t)
+	mockPlugin1.(*mocks.Plugin).On("ID").Return(mockPlugin1ID)
+	mockPlugin2 := mockPlugin(t)
+	mockPlugin2.(*mocks.Plugin).On("ID").Return(mockPlugin2ID)
 
-	inputSbis := [2]southbound.SouthboundInterface{sbi1, sbi2}
+	inputPlugins := [2]plugin.Plugin{mockPlugin1, mockPlugin2}
 
-	for _, sbi := range inputSbis {
-		err := sbiStore.Add(sbi)
+	for _, plugins := range inputPlugins {
+		err := pluginStore.Add(plugins)
 		if err != nil {
 			t.Error(err)
 		}
 	}
 
-	returnSbi, err := sbiStore.Get(store.Query{ID: sbiID2, Name: ""})
+	returnPlugin, err := pluginStore.Get(store.Query{ID: mockPlugin2ID, Name: ""})
 	if err != nil {
 		t.Error(err)
 	}
 
-	if returnSbi.ID != sbi2.ID().String() {
-		t.Errorf("Get() = %v, want %v", returnSbi.ID, sbi2.ID().String())
+	if returnPlugin.ID != mockPlugin2.ID().String() {
+		t.Errorf("Get() = %v, want %v", returnPlugin.ID, mockPlugin2.ID().String())
 	}
 }
 
 func TestDeleteAllSbis(t *testing.T) {
 	defer ensureStoreFilesForTestsAreRemoved()
 
-	pndID, _ := uuid.Parse("b4016412-eec5-45a1-aa29-f59915357bad")
-	sbiStore := NewPluginStore(pndID)
-
-	sbiID1, _ := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
-	sbiID2, _ := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab")
+	pluginStore := NewPluginStore()
 
-	sbi1, _ := NewSBI(spb.Type_TYPE_OPENCONFIG, sbiID1)
-	sbi2, _ := NewSBI(spb.Type_TYPE_OPENCONFIG, sbiID2)
+	mockPlugin1ID, err := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
+	if err != nil {
+		t.Error(err)
+	}
+	mockPlugin2ID, err := uuid.Parse("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab")
+	if err != nil {
+		t.Error(err)
+	}
+	mockPlugin1 := mockPlugin(t)
+	mockPlugin1.(*mocks.Plugin).On("ID").Return(mockPlugin1ID)
+	mockPlugin2 := mockPlugin(t)
+	mockPlugin2.(*mocks.Plugin).On("ID").Return(mockPlugin2ID)
 
-	inputSbis := [2]southbound.SouthboundInterface{sbi1, sbi2}
+	inputPlugins := [2]plugin.Plugin{mockPlugin1, mockPlugin2}
 
-	for _, sbi := range inputSbis {
-		err := sbiStore.Add(sbi)
+	for _, plugins := range inputPlugins {
+		err := pluginStore.Add(plugins)
 		if err != nil {
 			t.Error(err)
 		}
 	}
 
-	err := sbiStore.Delete(sbi1)
+	err = pluginStore.Delete(mockPlugin1)
 	if err != nil {
 		t.Error(err)
 	}
 
-	returnSbis, err := sbiStore.GetAll()
+	returnPlugins, err := pluginStore.GetAll()
 	if err != nil {
 		t.Error(err)
 	}
 
-	length := len(returnSbis)
+	length := len(returnPlugins)
 	if length != 1 {
 		t.Errorf("GetAll() length of array = %v, want %v", length, 2)
 	}
 
-	if returnSbis[0].ID != inputSbis[1].ID().String() {
-		t.Errorf("GetAll() = %v, want %v", returnSbis[0].ID, inputSbis[1].ID().String())
+	if returnPlugins[0].ID != inputPlugins[1].ID().String() {
+		t.Errorf("GetAll() = %v, want %v", returnPlugins[0].ID, inputPlugins[1].ID().String())
 	}
 }