user and network test(expect updates) working

This commit is contained in:
Matthew R Kasun
2021-04-14 16:13:03 -04:00
parent 3dd2189c4e
commit c97ce4f4bd
3 changed files with 104 additions and 80 deletions

View File

@@ -42,6 +42,9 @@ type AuthorizeTestCase struct {
errMessage string
}
var Networks []models.Network
var baseURL string = "http://localhost:8081"
func TestMain(m *testing.M) {
mongoconn.ConnectDatabase()
var waitgroup sync.WaitGroup
@@ -53,7 +56,7 @@ func TestMain(m *testing.M) {
}
func adminExists(t *testing.T) bool {
response, err := http.Get("http://localhost:8081/users/hasadmin")
response, err := http.Get("http://localhost:8081/api/users/adm/hasadmin")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
defer response.Body.Close()
@@ -76,9 +79,10 @@ func api(t *testing.T, data interface{}, method, url, authorization string) (*ht
assert.Nil(t, err, err)
}
if authorization != "" {
request.Header.Set("Authorization", "Bearer "+authorization)
request.Header.Set("authorization", "Bearer "+authorization)
}
client := http.Client{}
//t.Log("api request", request)
return client.Do(request)
}
@@ -86,7 +90,7 @@ func addAdmin(t *testing.T) {
var admin models.User
admin.UserName = "admin"
admin.Password = "password"
response, err := api(t, admin, http.MethodPost, "http://localhost:8081/users/createadmin", "secretkey")
response, err := api(t, admin, http.MethodPost, baseURL+"/api/users/adm/createadmin", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
}
@@ -95,7 +99,7 @@ func authenticate(t *testing.T) (string, error) {
var admin models.User
admin.UserName = "admin"
admin.Password = "password"
response, err := api(t, admin, http.MethodPost, "http://localhost:8081/users/authenticate", "secretkey")
response, err := api(t, admin, http.MethodPost, baseURL+"/api/users/adm/authenticate", "secretkey")
assert.Nil(t, err, err)
var body Success
@@ -113,15 +117,15 @@ func deleteAdmin(t *testing.T) {
}
token, err := authenticate(t)
assert.Nil(t, err, err)
_, err = api(t, "", http.MethodDelete, "http://localhost:8081/users/admin", token)
_, err = api(t, "", http.MethodDelete, baseURL+"/api/users/admin", token)
assert.Nil(t, err, err)
}
func createnetwork(t *testing.T) {
func createNetwork(t *testing.T) {
network := models.Network{}
network.NetID = "skynet"
network.AddressRange = "10.71.0.0/16"
response, err := api(t, network, http.MethodPost, "http://localhost:8081/api/networks", "secretkey")
response, err := api(t, network, http.MethodPost, baseURL+"/api/networks", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
}
@@ -130,7 +134,7 @@ func createKey(t *testing.T) {
key := models.AccessKey{}
key.Name = "skynet"
key.Uses = 10
response, err := api(t, key, http.MethodPost, "http://localhost:8081/api/networks/skynet/keys", "secretkey")
response, err := api(t, key, http.MethodPost, baseURL+"/api/networks/skynet/keys", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
defer response.Body.Close()
@@ -140,7 +144,7 @@ func createKey(t *testing.T) {
}
func getKey(t *testing.T, name string) models.AccessKey {
response, err := api(t, "", http.MethodGet, "http://localhost:8081/api/networks/skynet/keys", "secretkey")
response, err := api(t, "", http.MethodGet, baseURL+"/api/networks/skynet/keys", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
defer response.Body.Close()
@@ -156,7 +160,7 @@ func getKey(t *testing.T, name string) models.AccessKey {
}
func deleteKey(t *testing.T, key, network string) {
response, err := api(t, "", http.MethodDelete, "http://localhost:8081/api/networks/"+network+"/keys/"+key, "secretkey")
response, err := api(t, "", http.MethodDelete, baseURL+"/api/networks/"+network+"/keys/"+key, "secretkey")
assert.Nil(t, err, err)
//api does not return Deleted Count at this time
//defer response.Body.Close()
@@ -168,7 +172,7 @@ func deleteKey(t *testing.T, key, network string) {
}
func networkExists(t *testing.T) bool {
response, err := api(t, "", http.MethodGet, "http://localhost:8081/api/networks", "secretkey")
response, err := api(t, "", http.MethodGet, baseURL+"/api/networks", "secretkey")
assert.Nil(t, err, err)
defer response.Body.Close()
assert.Equal(t, http.StatusOK, response.StatusCode)
@@ -183,7 +187,7 @@ func networkExists(t *testing.T) bool {
func deleteNetworks(t *testing.T) {
response, err := api(t, "", http.MethodGet, "http://localhost:8081/api/networks", "secretkey")
response, err := api(t, "", http.MethodGet, baseURL+"/api/networks", "secretkey")
assert.Nil(t, err, err)
defer response.Body.Close()
assert.Equal(t, http.StatusOK, response.StatusCode)
@@ -191,7 +195,7 @@ func deleteNetworks(t *testing.T) {
assert.Nil(t, err, err)
for _, network := range Networks {
name := network.DisplayName
_, err := api(t, "", http.MethodDelete, "http://localhost:8081/api/networks/"+name, "secretkey")
_, err := api(t, "", http.MethodDelete, baseURL+"/api/networks/"+name, "secretkey")
assert.Nil(t, err, err)
}
}