pdns-auth-proxy/test_todo/test_utils.go

53 lines
1.1 KiB
Go
Raw Normal View History

2023-11-17 05:55:06 +00:00
package main
import (
"encoding/json"
"fmt"
"math/rand"
"reflect"
)
const (
testBaseURL string = "http://localhost:8081"
testVhost string = "localhost"
testAPIKey string = "123Password"
)
func generateTestAPIURL() string {
return fmt.Sprintf("%s/api/v1", testBaseURL)
}
func generateTestAPIVhostURL() string {
return fmt.Sprintf("%s/servers/%s", generateTestAPIURL(), testVhost)
}
func generateTestRequestURI() string {
return fmt.Sprintf("api/v1/servers/%s", testVhost)
}
func initializePowerDNSTestClient() (*PowerDNS, error) {
pdns, err := NewClient(testBaseURL, testAPIKey, 3, 7200)
return pdns, err
}
func generateTestZone() string {
domain := fmt.Sprintf("test-%d.com", rand.Int())
return domain
}
func areEqualJSON(s1, s2 []byte) (bool, error) {
var o1 interface{}
var o2 interface{}
var err error
err = json.Unmarshal([]byte(s1), &o1)
if err != nil {
return false, fmt.Errorf("Error mashalling string 1 :: %s", err.Error())
}
err = json.Unmarshal(s2, &o2)
if err != nil {
return false, fmt.Errorf("Error mashalling string 2 :: %s", err.Error())
}
return reflect.DeepEqual(o1, o2), nil
}