test changes

This commit is contained in:
afeiszli 2021-05-27 16:48:47 -04:00
parent a842f4a32b
commit cab7bb681f
5 changed files with 62 additions and 62 deletions

View file

@ -31,14 +31,14 @@ func TestCheckIn(t *testing.T) {
assert.Greater(t, resp.LastCheckIn, node.LastCheckIn)
})
}
func TestCreateGateway(t *testing.T) {
var gateway models.GatewayRequest
func TestCreateEgressGateway(t *testing.T) {
var gateway models.EgressGatewayRequest
gateway.Interface = "eth0"
gateway.RangeString = "10.100.100.0/24"
deleteNet(t)
createNet()
t.Run("NoNodes", func(t *testing.T) {
node, err := CreateGateway(gateway)
node, err := CreateEgressGateway(gateway)
assert.NotNil(t, err)
assert.Equal(t, models.Node{}, node)
assert.Equal(t, "mongo: no documents in result", err.Error())
@ -48,15 +48,15 @@ func TestCreateGateway(t *testing.T) {
gateway.NetID = "skynet"
gateway.NodeID = testnode.MacAddress
node, err := CreateGateway(gateway)
node, err := CreateEgressGateway(gateway)
assert.Nil(t, err)
assert.Equal(t, true, node.IsGateway)
assert.Equal(t, "10.100.100.0/24", node.GatewayRange)
assert.Equal(t, true, node.IsEgressGateway)
assert.Equal(t, "10.100.100.0/24", node.EgressGatewayRange)
})
}
func TestDeleteGateway(t *testing.T) {
var gateway models.GatewayRequest
func TestDeleteEgressGateway(t *testing.T) {
var gateway models.EgressGatewayRequest
deleteNet(t)
createNet()
createTestNode(t)
@ -66,33 +66,33 @@ func TestDeleteGateway(t *testing.T) {
gateway.NetID = "skynet"
gateway.NodeID = testnode.MacAddress
t.Run("Success", func(t *testing.T) {
node, err := CreateGateway(gateway)
node, err := CreateEgressGateway(gateway)
assert.Nil(t, err)
assert.Equal(t, true, node.IsGateway)
assert.Equal(t, "10.100.100.0/24", node.GatewayRange)
node, err = DeleteGateway(gateway.NetID, gateway.NodeID)
assert.Equal(t, true, node.IsEgressGateway)
assert.Equal(t, "10.100.100.0/24", node.EgressGatewayRange)
node, err = DeleteEgressGateway(gateway.NetID, gateway.NodeID)
assert.Nil(t, err)
assert.Equal(t, false, node.IsGateway)
assert.Equal(t, "", node.GatewayRange)
assert.Equal(t, false, node.IsEgressGateway)
assert.Equal(t, "", node.EgressGatewayRange)
assert.Equal(t, "", node.PostUp)
assert.Equal(t, "", node.PostDown)
})
t.Run("NotGateway", func(t *testing.T) {
node, err := DeleteGateway(gateway.NetID, gateway.NodeID)
node, err := DeleteEgressGateway(gateway.NetID, gateway.NodeID)
assert.Nil(t, err)
assert.Equal(t, false, node.IsGateway)
assert.Equal(t, "", node.GatewayRange)
assert.Equal(t, false, node.IsEgressGateway)
assert.Equal(t, "", node.EgressGatewayRange)
assert.Equal(t, "", node.PostUp)
assert.Equal(t, "", node.PostDown)
})
t.Run("BadNode", func(t *testing.T) {
node, err := DeleteGateway(gateway.NetID, "01:02:03")
node, err := DeleteEgressGateway(gateway.NetID, "01:02:03")
assert.NotNil(t, err)
assert.Equal(t, "mongo: no documents in result", err.Error())
assert.Equal(t, models.Node{}, node)
})
t.Run("BadNet", func(t *testing.T) {
node, err := DeleteGateway("badnet", gateway.NodeID)
node, err := DeleteEgressGateway("badnet", gateway.NodeID)
assert.NotNil(t, err)
assert.Equal(t, "mongo: no documents in result", err.Error())
assert.Equal(t, models.Node{}, node)
@ -121,19 +121,19 @@ func TestGetNetworkNodes(t *testing.T) {
t.Run("BadNet", func(t *testing.T) {
node, err := GetNetworkNodes("badnet")
assert.Nil(t, err)
assert.Equal(t, []models.ReturnNode(nil), node)
assert.Equal(t, []models.Node(nil), node)
//assert.Equal(t, "mongo: no documents in result", err.Error())
})
t.Run("NoNodes", func(t *testing.T) {
node, err := GetNetworkNodes("skynet")
assert.Nil(t, err)
assert.Equal(t, []models.ReturnNode(nil), node)
assert.Equal(t, []models.Node(nil), node)
})
t.Run("Success", func(t *testing.T) {
createTestNode(t)
node, err := GetNetworkNodes("skynet")
assert.Nil(t, err)
assert.NotEqual(t, []models.ReturnNode(nil), node)
assert.NotEqual(t, []models.Node(nil), node)
})
}
@ -160,32 +160,32 @@ func TestUncordonNode(t *testing.T) {
})
}
func TestValidateGateway(t *testing.T) {
var gateway models.GatewayRequest
func TestValidateEgressGateway(t *testing.T) {
var gateway models.EgressGatewayRequest
t.Run("InvalidRange", func(t *testing.T) {
gateway.Interface = "eth0"
gateway.RangeString = "helloworld"
err := ValidateGateway(gateway)
err := ValidateEgressGateway(gateway)
assert.NotNil(t, err)
assert.Equal(t, "IP Range Not Valid", err.Error())
})
t.Run("EmptyRange", func(t *testing.T) {
gateway.Interface = "eth0"
gateway.RangeString = ""
err := ValidateGateway(gateway)
err := ValidateEgressGateway(gateway)
assert.NotNil(t, err)
assert.Equal(t, "IP Range Not Valid", err.Error())
})
t.Run("EmptyInterface", func(t *testing.T) {
gateway.Interface = ""
err := ValidateGateway(gateway)
err := ValidateEgressGateway(gateway)
assert.NotNil(t, err)
assert.Equal(t, "Interface cannot be empty", err.Error())
})
t.Run("Success", func(t *testing.T) {
gateway.Interface = "eth0"
gateway.RangeString = "10.100.100.0/24"
err := ValidateGateway(gateway)
err := ValidateEgressGateway(gateway)
assert.Nil(t, err)
})
}

View file

@ -206,7 +206,7 @@ func deleteAllNodes(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/nodes", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
var nodes []models.ReturnNode
var nodes []models.Node
defer response.Body.Close()
json.NewDecoder(response.Body).Decode(&nodes)
for _, node := range nodes {

View file

@ -26,7 +26,7 @@ func TestCreateNetwork(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "You are unauthorized to access this endpoint", message.Message)
assert.Equal(t, "W1R3: You are unauthorized to access this endpoint.", message.Message)
})
t.Run("CreateNetwork", func(t *testing.T) {
response, err := api(t, network, http.MethodPost, baseURL+"/api/networks", "secretkey")
@ -73,7 +73,7 @@ func TestGetNetworks(t *testing.T) {
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "You are unauthorized to access this endpoint", message.Message)
assert.Equal(t, "W1R3: You are unauthorized to access this endpoint.", message.Message)
})
}
@ -99,7 +99,7 @@ func TestGetNetwork(t *testing.T) {
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "You are unauthorized to access this endpoint", message.Message)
assert.Equal(t, "W1R3: You are unauthorized to access this endpoint.", message.Message)
})
t.Run("InvalidNetwork", func(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/networks/badnetwork", "secretkey")
@ -108,8 +108,8 @@ func TestGetNetwork(t *testing.T) {
var message models.ErrorResponse
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, "This network does not exist", message.Message)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, "W1R3: This network does not exist.", message.Message)
assert.Equal(t, http.StatusNotFound, response.StatusCode)
})
}
@ -125,7 +125,7 @@ func TestDeleteNetwork(t *testing.T) {
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "You are unauthorized to access this endpoint", message.Message)
assert.Equal(t, "W1R3: You are unauthorized to access this endpoint.", message.Message)
})
t.Run("Badnetwork", func(t *testing.T) {
response, err := api(t, "", http.MethodDelete, baseURL+"/api/networks/badnetwork", "secretkey")
@ -134,14 +134,14 @@ func TestDeleteNetwork(t *testing.T) {
var message models.ErrorResponse
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, "This network does not exist", message.Message)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, "W1R3: This network does not exist.", message.Message)
assert.Equal(t, http.StatusNotFound, response.StatusCode)
})
t.Run("NodesExist", func(t *testing.T) {
setup(t)
response, err := api(t, "", http.MethodDelete, baseURL+"/api/networks/skynet", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusBadRequest, response.StatusCode)
assert.Equal(t, http.StatusForbidden, response.StatusCode)
defer response.Body.Close()
var message models.ErrorResponse
err = json.NewDecoder(response.Body).Decode(&message)
@ -222,7 +222,7 @@ func TestCreateKey(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "You are unauthorized to access this endpoint", message.Message)
assert.Equal(t, "W1R3: You are unauthorized to access this endpoint.", message.Message)
})
t.Run("Badnetwork", func(t *testing.T) {
response, err := api(t, key, http.MethodPost, baseURL+"/api/networks/badnetwork/keys", "secretkey")
@ -231,8 +231,8 @@ func TestCreateKey(t *testing.T) {
var message models.ErrorResponse
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, "This network does not exist", message.Message)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, "W1R3: This network does not exist.", message.Message)
assert.Equal(t, http.StatusNotFound, response.StatusCode)
})
}
@ -265,8 +265,8 @@ func TestDeleteKey(t *testing.T) {
var message models.ErrorResponse
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, "This network does not exist", message.Message)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, "W1R3: This network does not exist.", message.Message)
assert.Equal(t, http.StatusNotFound, response.StatusCode)
})
t.Run("InvalidCredentials", func(t *testing.T) {
response, err := api(t, "", http.MethodDelete, baseURL+"/api/networks/skynet/keys/skynet", "badkey")
@ -277,7 +277,7 @@ func TestDeleteKey(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "You are unauthorized to access this endpoint", message.Message)
assert.Equal(t, "W1R3: You are unauthorized to access this endpoint.", message.Message)
})
}
@ -302,8 +302,8 @@ func TestGetKeys(t *testing.T) {
var message models.ErrorResponse
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, "This network does not exist", message.Message)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, "W1R3: This network does not exist.", message.Message)
assert.Equal(t, http.StatusNotFound, response.StatusCode)
})
t.Run("InvalidCredentials", func(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/networks/skynet/keys", "badkey")
@ -314,7 +314,7 @@ func TestGetKeys(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "You are unauthorized to access this endpoint", message.Message)
assert.Equal(t, "W1R3: You are unauthorized to access this endpoint.", message.Message)
})
}
@ -352,8 +352,8 @@ func TestUpdateNetwork(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "This network does not exist", message.Message)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, "W1R3: This network does not exist.", message.Message)
assert.Equal(t, http.StatusNotFound, response.StatusCode)
})
t.Run("UpdateAddress", func(t *testing.T) {
type Network struct {

View file

@ -35,7 +35,7 @@ func TestGetAllNodes(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/nodes", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
var nodes []models.ReturnNode
var nodes []models.Node
defer response.Body.Close()
err = json.NewDecoder(response.Body).Decode(&nodes)
assert.Nil(t, err, err)
@ -46,7 +46,7 @@ func TestGetAllNodes(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/nodes", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
var nodes []models.ReturnNode
var nodes []models.Node
defer response.Body.Close()
err = json.NewDecoder(response.Body).Decode(&nodes)
assert.Nil(t, err, err)
@ -60,7 +60,7 @@ func TestGetNetworkNodes(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/nodes/skynet", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
var nodes []models.ReturnNode
var nodes []models.Node
defer response.Body.Close()
err = json.NewDecoder(response.Body).Decode(&nodes)
assert.Nil(t, err, err)
@ -71,7 +71,7 @@ func TestGetNetworkNodes(t *testing.T) {
response, err := api(t, "", http.MethodGet, baseURL+"/api/nodes/skynet", "secretkey")
assert.Nil(t, err, err)
assert.Equal(t, http.StatusOK, response.StatusCode)
var nodes []models.ReturnNode
var nodes []models.Node
defer response.Body.Close()
err = json.NewDecoder(response.Body).Decode(&nodes)
assert.Nil(t, err, err)
@ -269,10 +269,10 @@ func TestCheckIn(t *testing.T) {
})
}
func TestCreateGateway(t *testing.T) {
func TestCreateEgressGateway(t *testing.T) {
setup(t)
//assert.False(t, node.IsGateway)
var gateway models.GatewayRequest
//assert.False(t, node.IsEgressGateway/g)
var gateway models.EgressGatewayRequest
t.Run("Valid", func(t *testing.T) {
gateway.RangeString = "0.0.0.0/0"
gateway.Interface = "eth0"
@ -283,7 +283,7 @@ func TestCreateGateway(t *testing.T) {
var message models.Node
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.True(t, message.IsGateway)
assert.True(t, message.IsEgressGateway)
t.Log(err)
})
t.Run("BadRange", func(t *testing.T) {
@ -314,7 +314,7 @@ func TestCreateGateway(t *testing.T) {
})
}
func TestDeleteGateway(t *testing.T) {
func TestDeleteEgressGateway(t *testing.T) {
setup(t)
response, err := api(t, "", http.MethodDelete, baseURL+"/api/nodes/skynet/01:02:03:04:05:06/deletegateway", "secretkey")
assert.Nil(t, err, err)
@ -323,7 +323,7 @@ func TestDeleteGateway(t *testing.T) {
var message models.Node
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.False(t, message.IsGateway)
assert.False(t, message.IsEgressGateway)
}
func TestUncordonNode(t *testing.T) {
@ -400,7 +400,7 @@ func TestCreateNode(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, http.StatusBadRequest, message.Code)
assert.Contains(t, message.Message, "Field validation for 'MacAddress' failed on the 'mac' tag")
assert.Contains(t, message.Message, "Field validation for 'MacAddress' failed on the 'macaddress_valid' tag")
})
t.Run("BadPublicKey", func(t *testing.T) {
var node models.Node

View file

@ -40,7 +40,7 @@ func TestAdminCreation(t *testing.T) {
err = json.NewDecoder(response.Body).Decode(&message)
assert.Nil(t, err, err)
assert.Equal(t, http.StatusBadRequest, response.StatusCode)
assert.Equal(t, "Admin already Exists", message.Message)
assert.Equal(t, "W1R3: Admin already exists! ", message.Message)
})
}
@ -69,7 +69,7 @@ func TestGetUser(t *testing.T) {
assert.Nil(t, err, err)
assert.Equal(t, http.StatusUnauthorized, response.StatusCode)
assert.Equal(t, http.StatusUnauthorized, message.Code)
assert.Equal(t, "Error Verifying Auth Token", message.Message)
assert.Equal(t, "token contains an invalid number of segments", message.Message)
})
}