Skip to content
Snippets Groups Projects
api_test.go 2.44 KiB
Newer Older
  • Learn to ignore specific revisions
  • Manuel Kieweg's avatar
    Manuel Kieweg committed
    package api
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    import (
    	"testing"
    
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	ppb "code.fbi.h-da.de/danet/api/go/gosdn/pnd"
    	spb "code.fbi.h-da.de/danet/api/go/gosdn/southbound"
    	tpb "code.fbi.h-da.de/danet/api/go/gosdn/transport"
    	"code.fbi.h-da.de/danet/gosdn/nucleus"
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	log "github.com/sirupsen/logrus"
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	"github.com/spf13/viper"
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    )
    
    func Test_Init(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	viper.SetConfigFile("./api_test.toml")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err := Init(bufnet); err != nil {
    		t.Error(err)
    	}
    }
    
    func Test_GetIds(t *testing.T) {
    	resp, err := GetIds(bufnet)
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    }
    
    func Test_AddPnd(t *testing.T) {
    	sbi := nucleus.NewSBI(spb.Type_OPENCONFIG)
    	resp, err := AddPnd(bufnet, "test", "test pnd", sbi.ID().String())
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    }
    
    func Test_GetPnd(t *testing.T) {
    	resp, err := GetPnd(bufnet, pndID)
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	got := resp.Pnd[0].Id
    	if got != pndID {
    		t.Errorf("PND ID is %v, expected %v", got, pndID)
    	}
    }
    
    func Test_GetChanges(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	resp, err := getChanges(bufnet, pndID)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    }
    
    func Test_CommitConfirm(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	resp, err := commit(bufnet, pndID, changeID)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	resp, err = confirm(bufnet, pndID, changeID)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    
    }
    
    func Test_AddDevice(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	opt := &tpb.TransportOption{
    		Address:  "test",
    		Username: "test",
    		Password: "test",
    		TransportOption: &tpb.TransportOption_GnmiTransportOption{
    			GnmiTransportOption: &tpb.GnmiTransportOption{},
    		},
    	}
    	resp, err := addDevice(bufnet, "test", opt, sbiUUID, pndUUID)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    }
    
    func Test_GetDevice(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	resp, err := getDevice(bufnet, pndID, ondID)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	got := resp.Ond[0].Id
    	if got != ondID {
    		t.Errorf("PND ID is %v, expected %v", got, ondID)
    	}
    }
    
    func Test_Update(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	resp, err := changeRequest(bufnet, ondID, pndID, "", "", ppb.ApiOperation_UPDATE)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    }
    
    func Test_Replace(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	resp, err := changeRequest(bufnet, ondID, pndID, "", "", ppb.ApiOperation_REPLACE)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    }
    
    func Test_Delete(t *testing.T) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	resp, err := changeRequest(bufnet, ondID, pndID, "", "", ppb.ApiOperation_DELETE)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if err != nil {
    		t.Error(err)
    		return
    	}
    	log.Info(resp)
    }