Skip to content
Snippets Groups Projects
Commit de669a68 authored by Malte Bauch's avatar Malte Bauch
Browse files

Update test cases for networkElement

parent 6153780c
No related branches found
No related tags found
1 merge request!401Change the current gosdn plugin implementation from Go's internal plugin system to hashicorp's go-plugins
This commit is part of merge request !401. Comments created here will be created in the context of that merge request.
......@@ -5,20 +5,18 @@ import (
"testing"
"code.fbi.h-da.de/danet/gosdn/controller/conflict"
"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/interfaces/transport"
"code.fbi.h-da.de/danet/gosdn/controller/mocks"
tpb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/transport"
"code.fbi.h-da.de/danet/gosdn/models/generated/openconfig"
"github.com/google/uuid"
"github.com/openconfig/ygot/ygot"
)
func TestNetworkElement_Id(t *testing.T) {
type fields struct {
Model ygot.ValidatedGoStruct
SBI southbound.SouthboundInterface
Plugin plugin.Plugin
Transport transport.Transport
UUID uuid.UUID
Name string
......@@ -39,8 +37,7 @@ func TestNetworkElement_Id(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
d := &CommonNetworkElement{
Plugin: tt.fields.Model,
sbi: tt.fields.SBI,
Plugin: tt.fields.Plugin,
transport: tt.fields.Transport,
UUID: tt.fields.UUID,
name: tt.fields.Name,
......@@ -53,11 +50,11 @@ func TestNetworkElement_Id(t *testing.T) {
}
func TestNewNetworkElement(t *testing.T) {
sbi := &OpenConfig{}
mockPlugin := mockPlugin(t)
type args struct {
sbi southbound.SouthboundInterface
opts *tpb.TransportOption
name string
plugin plugin.Plugin
opts *tpb.TransportOption
name string
}
tests := []struct {
name string
......@@ -67,7 +64,7 @@ func TestNewNetworkElement(t *testing.T) {
{
name: "default",
args: args{
sbi: sbi,
plugin: mockPlugin,
opts: &tpb.TransportOption{
Address: "test:///",
Username: "test",
......@@ -87,7 +84,7 @@ func TestNewNetworkElement(t *testing.T) {
{
name: "invalid options",
args: args{
sbi: sbi,
plugin: mockPlugin,
opts: &tpb.TransportOption{
Address: "test:///",
Username: "test",
......@@ -102,21 +99,18 @@ func TestNewNetworkElement(t *testing.T) {
tt := tt
t.Run(tt.name, func(t *testing.T) {
t.Parallel()
resp, err := NewNetworkElement(tt.args.name, uuid.Nil, tt.args.opts, tt.args.sbi, conflict.Metadata{})
resp, err := NewNetworkElement(tt.args.name, uuid.Nil, tt.args.opts, tt.args.plugin, conflict.Metadata{})
if (err != nil) != tt.wantErr {
t.Errorf("NewNetworkElement() error = %v, wantErr %v", err, tt.wantErr)
return
}
if resp != nil {
if reflect.TypeOf(resp.GetModel()) != reflect.TypeOf(&openconfig.Device{}) {
t.Error("NewNetworkElement() returned invalid GoStruct")
if reflect.TypeOf(resp.GetPlugin()) != reflect.TypeOf(&mocks.Plugin{}) {
t.Error("NewNetworkElement() returned invalid plugin")
}
if reflect.TypeOf(resp.Transport()) != reflect.TypeOf(&Gnmi{}) {
t.Error("NewNetworkElement() returned invalid transport")
}
if reflect.TypeOf(resp.SBI()) != reflect.TypeOf(&OpenConfig{}) {
t.Error("NewNetworkElement() returned invalid GoStruct")
}
if resp.Name() != "MyNetworkElement" {
t.Error("NewNetworkElement() returned wrong name")
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment