added config store to database

This commit is contained in:
Matthew R Kasun
2021-04-18 00:31:20 -04:00
parent ed80a219b9
commit e4744a6279
2 changed files with 33 additions and 12 deletions

View File

@@ -2,6 +2,7 @@ package main
import ( import (
"bytes" "bytes"
"context"
"encoding/json" "encoding/json"
"io/ioutil" "io/ioutil"
"net/http" "net/http"
@@ -50,6 +51,19 @@ func TestMain(m *testing.M) {
var waitgroup sync.WaitGroup var waitgroup sync.WaitGroup
waitgroup.Add(1) waitgroup.Add(1)
go controller.HandleRESTRequests(&waitgroup) go controller.HandleRESTRequests(&waitgroup)
var gconf models.GlobalConfig
gconf.ServerGRPC = "localhost:8081"
gconf.PortGRPC = "50051"
//err := SetGlobalConfig(gconf)
collection := mongoconn.Client.Database("netmaker").Collection("config")
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
//create, _, err := functions.GetGlobalConfig()
_, err := collection.InsertOne(ctx, gconf)
if err != nil {
panic("could not create config store")
}
//wait for http server to start //wait for http server to start
time.Sleep(time.Second * 1) time.Sleep(time.Second * 1)
os.Exit(m.Run()) os.Exit(m.Run())
@@ -178,12 +192,16 @@ func networkExists(t *testing.T) bool {
assert.Equal(t, http.StatusOK, response.StatusCode) assert.Equal(t, http.StatusOK, response.StatusCode)
err = json.NewDecoder(response.Body).Decode(&Networks) err = json.NewDecoder(response.Body).Decode(&Networks)
assert.Nil(t, err, err) assert.Nil(t, err, err)
if Networks == nil { for i, network := range Networks {
t.Log(i, network)
if network.NetID == "" {
return false return false
} else { } else {
return true return true
} }
} }
return false
}
func deleteNetworks(t *testing.T) { func deleteNetworks(t *testing.T) {

View File

@@ -115,7 +115,7 @@ func TestGetNetwork(t *testing.T) {
}) })
} }
func TestDeletenetwork(t *testing.T) { func TestDeleteMetwork(t *testing.T) {
t.Run("InvalidKey", func(t *testing.T) { t.Run("InvalidKey", func(t *testing.T) {
response, err := api(t, "", http.MethodDelete, baseURL+"/api/networks/skynet", "badkey") response, err := api(t, "", http.MethodDelete, baseURL+"/api/networks/skynet", "badkey")
@@ -154,11 +154,10 @@ func TestDeletenetwork(t *testing.T) {
}) })
} }
func TestCreateAccessKey(t *testing.T) { func TestCreateKey(t *testing.T) {
//ensure we are working with known networks
if !networkExists(t) { deleteNetworks(t)
createNetwork(t) createNetwork(t)
}
key := models.AccessKey{} key := models.AccessKey{}
key.Name = "skynet" key.Name = "skynet"
@@ -222,6 +221,9 @@ func TestCreateAccessKey(t *testing.T) {
} }
func TestDeleteKey(t *testing.T) { func TestDeleteKey(t *testing.T) {
//ensure we are working with known networks
deleteNetworks(t)
createNetwork(t)
//ensure key exists //ensure key exists
createKey(t) createKey(t)
t.Run("KeyValid", func(t *testing.T) { t.Run("KeyValid", func(t *testing.T) {
@@ -273,7 +275,9 @@ func TestDeleteKey(t *testing.T) {
} }
func TestGetKeys(t *testing.T) { func TestGetKeys(t *testing.T) {
//ensure we are working with known networks
deleteNetworks(t)
createNetwork(t)
createKey(t) createKey(t)
t.Run("Valid", func(t *testing.T) { t.Run("Valid", func(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/networks/skynet/keys", "secretkey") response, err := api(t, "", http.MethodGet, baseURL+"/api/networks/skynet/keys", "secretkey")
@@ -284,7 +288,6 @@ func TestGetKeys(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&keys) err = json.NewDecoder(response.Body).Decode(&keys)
assert.Nil(t, err, err) assert.Nil(t, err, err)
}) })
//deletekeys
t.Run("Invalidnetwork", func(t *testing.T) { t.Run("Invalidnetwork", func(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/networks/badnetwork/keys", "secretkey") response, err := api(t, "", http.MethodGet, baseURL+"/api/networks/badnetwork/keys", "secretkey")
assert.Nil(t, err, err) assert.Nil(t, err, err)