portainer/pkg/edge/utils_test.go

61 lines
1.5 KiB
Go
Raw Normal View History

package edge
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestGetPortainerURLFromEdgeKey(t *testing.T) {
tests := []struct {
name string
edgeKey string
expected string
}{
{
name: "ValidEdgeKey",
edgeKey: "aHR0cHM6Ly9wb3J0YWluZXIuaW98cG9ydGFpbmVyLmlvOjgwMDB8YXNkZnwx",
expected: "https://portainer.io",
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
result, err := GetPortainerURLFromEdgeKey(tt.edgeKey)
assert.NoError(t, err)
assert.Equal(t, tt.expected, result)
})
}
}
func TestIsValidEdgeStackName(t *testing.T) {
f := func(name string, expected bool) {
if IsValidEdgeStackName(name) != expected {
t.Fatalf("expected %v, found %v", expected, IsValidEdgeStackName(name))
}
}
f("edge-stack", true)
f("edge_stack", true)
f("edgestack", true)
f("edgestack11", true)
f("111", true)
f("111edgestack", true)
f("edge#stack", false)
f("edge stack", false)
f("Edge_stack", false)
f("EdgeStack", false)
f("-edgestack", false)
f("_edgestack", false)
f("#edgestack", false)
f("/edgestack", false)
f("#edgestack", false)
f("édgestack", false)
f("", false)
f(" ", false)
f("-", false)
f("_", false)
f("E", false)
f("eedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackdgeedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackedgestackstack", false)
}