From 75b6199c1b0b04bac32abc6f18a1dc2e68da0242 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Wed, 8 Feb 2017 21:44:51 +0100 Subject: feat context: Add deserialisation tests --- context/context_test.go | 83 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 context/context_test.go (limited to 'context/context_test.go') diff --git a/context/context_test.go b/context/context_test.go new file mode 100644 index 000000000000..b34222ed4650 --- /dev/null +++ b/context/context_test.go @@ -0,0 +1,83 @@ +package context + +import ( + "reflect" + "testing" +) + +func TestLoadFlatContextFromFile(t *testing.T) { + ctx, err := LoadContextFromFile("testdata/flat-test.yaml") + + if err != nil { + t.Error(err) + t.Fail() + } + + expected := Context{ + Name: "k8s.prod.mydomain.com", + Global: map[string]interface{}{ + "globalVar": "lizards", + }, + ResourceSets: []ResourceSet{ + { + Name: "some-api", + Values: map[string]interface{}{ + "apiPort": float64(4567), // yep! + "importantFeature": true, + "version": "1.0-0e6884d", + }, + Include: nil, + Parent: "", + }, + }, + BaseDir: "testdata", + } + + if !reflect.DeepEqual(*ctx, expected) { + t.Error("Loaded context and expected context did not match") + t.Fail() + } +} + +func TestLoadContextWithResourceSetCollections(t *testing.T) { + ctx, err := LoadContextFromFile("testdata/collections-test.yaml") + + if err != nil { + t.Error(err) + t.Fail() + } + + expected := Context{ + Name: "k8s.prod.mydomain.com", + Global: map[string]interface{}{ + "globalVar": "lizards", + }, + ResourceSets: []ResourceSet{ + { + Name: "some-api", + Values: map[string]interface{}{ + "apiPort": float64(4567), // yep! + "importantFeature": true, + "version": "1.0-0e6884d", + }, + Include: nil, + Parent: "", + }, + { + Name: "collection/nested", + Values: map[string]interface{}{ + "lizards": "good", + }, + Include: nil, + Parent: "collection", + }, + }, + BaseDir: "testdata", + } + + if !reflect.DeepEqual(*ctx, expected) { + t.Error("Loaded context and expected context did not match") + t.Fail() + } + +} -- cgit 1.4.1