Add tests for Anchore client URL intake

Signed-off-by: Dan Luhring <dan.luhring@anchore.com>
This commit is contained in:
Dan Luhring 2021-02-01 13:57:40 -05:00
parent 6d730d24dd
commit 5b5fa7ec90
No known key found for this signature in database
GPG Key ID: 9CEE23D079426CEF

View File

@ -0,0 +1,71 @@
package anchore
import "testing"
func TestHasScheme(t *testing.T) {
cases := []struct {
url string
expected bool
}{
{
url: "http://localhost",
expected: true,
},
{
url: "https://anchore.com:8443",
expected: true,
},
{
url: "google.com",
expected: false,
},
{
url: "",
expected: false,
},
}
for _, testCase := range cases {
t.Run(testCase.url, func(t *testing.T) {
result := hasScheme(testCase.url)
if testCase.expected != result {
t.Errorf("expected %t but got %t", testCase.expected, result)
}
})
}
}
func TestEnsureURLHasScheme(t *testing.T) {
cases := []struct {
url string
expected string
}{
{
url: "http://localhost",
expected: "http://localhost",
},
{
url: "https://anchore.com:8443",
expected: "https://anchore.com:8443",
},
{
url: "google.com:1234/v1/",
expected: "http://google.com:1234/v1/",
},
{
url: "localhost",
expected: "http://localhost",
},
}
for _, testCase := range cases {
t.Run(testCase.url, func(t *testing.T) {
result := ensureURLHasScheme(testCase.url)
if testCase.expected != result {
t.Errorf("expected '%s' but got '%s'", testCase.expected, result)
}
})
}
}