mirror of
https://github.com/argoproj/argo-cd.git
synced 2026-04-05 00:08:49 +02:00
58 lines
1.4 KiB
Go
58 lines
1.4 KiB
Go
package ksonnet
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
"path/filepath"
|
|
"regexp"
|
|
"runtime"
|
|
"testing"
|
|
|
|
log "github.com/sirupsen/logrus"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
var (
|
|
testDataDir string
|
|
)
|
|
|
|
const (
|
|
testAppName = "ksonnet"
|
|
testEnvName = "prod"
|
|
)
|
|
|
|
func init() {
|
|
_, filename, _, _ := runtime.Caller(0)
|
|
testDataDir = filepath.Join(filepath.Dir(filename), "../../test/e2e/testdata")
|
|
}
|
|
|
|
func TestKsonnet(t *testing.T) {
|
|
ksApp, err := NewKsonnetApp(filepath.Join(testDataDir, testAppName))
|
|
assert.Nil(t, err)
|
|
defaultDest, err := ksApp.Destination(testEnvName)
|
|
assert.True(t, err == nil)
|
|
assert.Equal(t, "https://kubernetes.default.svc", defaultDest.Server)
|
|
}
|
|
|
|
func TestShow(t *testing.T) {
|
|
ksApp, err := NewKsonnetApp(filepath.Join(testDataDir, testAppName))
|
|
assert.Nil(t, err)
|
|
objs, err := ksApp.Show(testEnvName)
|
|
assert.Nil(t, err)
|
|
assert.Equal(t, 2, len(objs))
|
|
for _, obj := range objs {
|
|
jsonBytes, err := json.Marshal(obj)
|
|
assert.Nil(t, err)
|
|
log.Infof("%v", string(jsonBytes))
|
|
}
|
|
}
|
|
|
|
func TestVersion(t *testing.T) {
|
|
ver, err := Version()
|
|
assert.NoError(t, err)
|
|
SemverRegexValidation := `^v(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$`
|
|
re := regexp.MustCompile(SemverRegexValidation)
|
|
fmt.Println(ver)
|
|
assert.True(t, re.MatchString(ver))
|
|
}
|