Skip to content

Commit

Permalink
Changes Main test to use Keyfile
Browse files Browse the repository at this point in the history
  • Loading branch information
azak-azkaran committed Oct 7, 2020
1 parent 1b01386 commit 21c2df6
Showing 1 changed file with 20 additions and 28 deletions.
48 changes: 20 additions & 28 deletions main_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package main

import (
"bufio"
"bytes"
"context"
"encoding/json"
"fmt"
Expand Down Expand Up @@ -139,53 +138,46 @@ func TestMainStart(t *testing.T) {

func TestMainMain(t *testing.T) {
fmt.Println("running: TestMainMain")
t.Cleanup(clear)
t.Cleanup(func() {
os.Remove(MAIN_TEST_KEYFILE_PATH)
clear()
})
gin.SetMode(gin.TestMode)
testconfig := readConfig(t)
os.Setenv("AGENT_ADDRESS", MAIN_TEST_ADDRESS)
os.Setenv("AGENT_DURATION", testconfig.Duration)
os.Setenv("AGENT_PATHDB", "./test/DB")
os.Setenv("AGENT_MOUNT_DURATION", MAIN_TEST_MOUNT_DURATION)
os.Setenv("AGENT_MOUNT_ALLOW", MAIN_TEST_MOUNT_ALLOW)
os.Setenv("AGENT_VAULT_KEY_FILE", MAIN_TEST_KEYFILE_PATH)
multipleKey = true
sealStatus = true
Progress = 0

home, err := os.Getwd()
require.NoError(t, err)

go main()
time.Sleep(1 * time.Second)
AgentConfiguration.VaultConfig = testconfig.config

resp, err := http.Get(REST_TEST_PING)
f, err := os.Create(MAIN_TEST_KEYFILE_PATH)
require.NoError(t, err)
defer resp.Body.Close()

w := bufio.NewWriter(f)
key := "test"
for i := 1; i < 6; i++ {
msg := VaultKeyMessage{
Key: "test" + strconv.Itoa(i),
Share: i,
}
reqBody, err := json.Marshal(msg)
require.NoError(t, err)

fmt.Println("Sending Body:", string(reqBody))
_, err = http.Post(REST_TEST_UNSEAL_KEY,
MAIN_POST_DATA_TYPE, bytes.NewBuffer(reqBody))
_, err := w.WriteString(key + strconv.Itoa(i) + "\n")
assert.NoError(t, err)
}
err = w.Flush()
assert.NoError(t, err)
require.FileExists(t, MAIN_TEST_KEYFILE_PATH)

tokenMessage := TokenMessage{
Token: "randomtoken",
}
reqBody, err := json.Marshal(tokenMessage)
require.NoError(t, err)
go main()
time.Sleep(1 * time.Second)
AgentConfiguration.VaultConfig = testconfig.config

fmt.Println("Sending Body:", string(reqBody))
_, err = http.Post(REST_TEST_TOKEN,
MAIN_POST_DATA_TYPE, bytes.NewBuffer(reqBody))
assert.NoError(t, err)
sendingGet(t, REST_TEST_PING, http.StatusOK)

sendingPost(t, REST_TEST_TOKEN, http.StatusOK, TokenMessage{
Token: "randomtoken",
})

token, err := GetToken(AgentConfiguration.DB)
assert.NoError(t, err)
Expand Down

0 comments on commit 21c2df6

Please sign in to comment.