1
0
mirror of https://github.com/rancher/rke.git synced 2025-09-14 22:20:11 +00:00

more unit tests

This commit is contained in:
galal-hussein
2017-12-07 02:40:44 +02:00
parent a5b5f06fd5
commit f74dbfbd33
10 changed files with 450 additions and 2 deletions

43
addons/addons_test.go Normal file
View File

@@ -0,0 +1,43 @@
package addons
import (
"bytes"
"fmt"
"testing"
"k8s.io/api/batch/v1"
yamlutil "k8s.io/apimachinery/pkg/util/yaml"
)
const (
AddonSuffix = "-deploy-job"
FakeAddonName = "example-addon"
FakeNodeName = "node1"
FakeAddonImage = "example/example:latest"
)
func TestJobManifest(t *testing.T) {
jobYaml := GetAddonsExcuteJob(FakeAddonName, FakeNodeName, FakeAddonImage)
job := v1.Job{}
decoder := yamlutil.NewYAMLToJSONDecoder(bytes.NewReader([]byte(jobYaml)))
err := decoder.Decode(&job)
if err != nil {
t.Fatalf("Failed To decode Job yaml: %v", err)
}
assertEqual(t, job.Name, FakeAddonName+AddonSuffix,
fmt.Sprintf("Failed to verify job name [%s]", FakeAddonName+AddonSuffix))
assertEqual(t, job.Spec.Template.Spec.NodeName, FakeNodeName,
fmt.Sprintf("Failed to verify node name [%s] in the job", FakeNodeName))
assertEqual(t, job.Spec.Template.Spec.Containers[0].Image, FakeAddonImage,
fmt.Sprintf("Failed to verify container image [%s] in the job", FakeAddonImage))
}
func assertEqual(t *testing.T, a interface{}, b interface{}, message string) {
if a == b {
return
}
if len(message) == 0 {
message = fmt.Sprintf("%v != %v", a, b)
}
t.Fatal(message)
}