Skip to content
Snippets Groups Projects
Commit f5d1b6f9 authored by Manuel Kieweg's avatar Manuel Kieweg
Browse files

Integration tests for CLI

parent 19a8499c
No related branches found
No related tags found
3 merge requests!120Resolve "Code Quality",!119Draft: Resolve "Tests for HTTP API and CLI",!90Develop
......@@ -63,7 +63,7 @@ func createSouthboundInterfaces() error {
}
// createPrincipalNetworkDomain initializes the controller with an initial PND
func createPrincipalNetworkDomain(sbi SouthboundInterface) error{
func createPrincipalNetworkDomain(sbi SouthboundInterface) error {
pnd, err := NewPND("base", "gosdn base pnd", uuid.New(), sbi)
if err != nil {
return err
......
package nucleus
import "testing"
func TestErrAlreadyExists_Error(t *testing.T) {
type fields struct {
item interface{}
}
tests := []struct {
name string
fields fields
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := &ErrAlreadyExists{
item: tt.fields.item,
}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrInvalidParameters_Error(t *testing.T) {
type fields struct {
f interface{}
r interface{}
}
tests := []struct {
name string
fields fields
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := ErrInvalidParameters{
f: tt.fields.f,
r: tt.fields.r,
}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrInvalidTransportOptions_Error(t *testing.T) {
type fields struct {
t interface{}
}
tests := []struct {
name string
fields fields
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := ErrInvalidTransportOptions{
t: tt.fields.t,
}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrInvalidTypeAssertion_Error(t *testing.T) {
type fields struct {
v interface{}
t interface{}
}
tests := []struct {
name string
fields fields
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := ErrInvalidTypeAssertion{
v: tt.fields.v,
t: tt.fields.t,
}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrNilClient_Error(t *testing.T) {
tests := []struct {
name string
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := &ErrNilClient{}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrNil_Error(t *testing.T) {
tests := []struct {
name string
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := &ErrNil{}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrNotFound_Error(t *testing.T) {
type fields struct {
id interface{}
}
tests := []struct {
name string
fields fields
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := &ErrNotFound{
id: tt.fields.id,
}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrNotYetImplemented_Error(t *testing.T) {
tests := []struct {
name string
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := ErrNotYetImplemented{}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
func TestErrUnsupportedPath_Error(t *testing.T) {
type fields struct {
p interface{}
}
tests := []struct {
name string
fields fields
want string
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := ErrUnsupportedPath{
p: tt.fields.p,
}
if got := e.Error(); got != tt.want {
t.Errorf("Error() = %v, want %v", got, tt.want)
}
})
}
}
......@@ -31,6 +31,7 @@ func healthCheck(writer http.ResponseWriter, request *http.Request) {
writer.WriteHeader(http.StatusOK)
}
// nolint
func httpHandler(writer http.ResponseWriter, request *http.Request) {
log.WithFields(log.Fields{
"request": request,
......@@ -162,4 +163,4 @@ func httpHandler(writer http.ResponseWriter, request *http.Request) {
default:
writer.WriteHeader(http.StatusBadRequest)
}
}
\ No newline at end of file
}
package nucleus
import (
"context"
"testing"
)
func Test_httpApi(t *testing.T) {
type args struct {
ctx context.Context
}
tests := []struct {
name string
args args
wantErr bool
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if err := httpApi(tt.args.ctx); (err != nil) != tt.wantErr {
t.Errorf("httpApi() error = %v, wantErr %v", err, tt.wantErr)
}
})
}
}
......@@ -273,8 +273,8 @@ func TestGnmi_SubscribeIntegration(t *testing.T) {
go func() {
err = g.Subscribe(ctx)
if (err != nil) != tt.wantErr {
if !tt.wantErr{
if err.Error() != "rpc error: code = Canceled desc = context canceled"{
if !tt.wantErr {
if err.Error() != "rpc error: code = Canceled desc = context canceled" {
t.Errorf("Subscribe() error = %v, wantErr %v", err, tt.wantErr)
}
}
......
......@@ -35,8 +35,8 @@ func TestOpenConfig_Id(t *testing.T) {
{
name: "default",
fields: fields{
schema: nil,
id: ocUUID,
schema: nil,
id: ocUUID,
},
want: ocUUID,
},
......@@ -44,8 +44,8 @@ func TestOpenConfig_Id(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
oc := &OpenConfig{
schema: tt.fields.schema,
id: tt.fields.id,
schema: tt.fields.schema,
id: tt.fields.id,
}
if got := oc.Id(); !reflect.DeepEqual(got, tt.want) {
t.Errorf("Id() = %v, want %v", got, tt.want)
......@@ -56,8 +56,8 @@ func TestOpenConfig_Id(t *testing.T) {
func TestOpenConfig_SbiIdentifier(t *testing.T) {
type fields struct {
schema *ytypes.Schema
id uuid.UUID
schema *ytypes.Schema
id uuid.UUID
}
tests := []struct {
name string
......@@ -69,8 +69,8 @@ func TestOpenConfig_SbiIdentifier(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
oc := &OpenConfig{
schema: tt.fields.schema,
id: tt.fields.id,
schema: tt.fields.schema,
id: tt.fields.id,
}
if got := oc.SbiIdentifier(); got != tt.want {
t.Errorf("SbiIdentifier() = %v, want %v", got, tt.want)
......@@ -85,8 +85,8 @@ func TestOpenConfig_Schema(t *testing.T) {
t.Error(err)
}
type fields struct {
schema *ytypes.Schema
id uuid.UUID
schema *ytypes.Schema
id uuid.UUID
}
tests := []struct {
name string
......@@ -98,8 +98,8 @@ func TestOpenConfig_Schema(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
oc := &OpenConfig{
schema: tt.fields.schema,
id: tt.fields.id,
schema: tt.fields.schema,
id: tt.fields.id,
}
got := oc.Schema().SchemaTree
if !reflect.DeepEqual(got, tt.want.SchemaTree) {
......
......@@ -5,13 +5,22 @@ resource "docker_container" "gosdn" {
image = docker_image.gosdn.name
restart = "always"
networks_advanced {
name = "bridge"
}
ports {
internal = 55055
external = 5555
}
ports {
internal = 8080
external = 8080
}
env = [
"GOSDN_DEBUG=",
"GOSDN_LOG=debug",
]
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment