diff options
Diffstat (limited to 'core/directives_test.go')
-rw-r--r-- | core/directives_test.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/core/directives_test.go b/core/directives_test.go new file mode 100644 index 000000000..1bee144f5 --- /dev/null +++ b/core/directives_test.go @@ -0,0 +1,31 @@ +package core + +import ( + "reflect" + "testing" +) + +func TestRegister(t *testing.T) { + directives := []directive{ + {"dummy", nil}, + {"dummy2", nil}, + } + directiveOrder = directives + RegisterDirective("foo", nil, "dummy") + if len(directiveOrder) != 3 { + t.Fatal("Should have 3 directives now") + } + getNames := func() (s []string) { + for _, d := range directiveOrder { + s = append(s, d.name) + } + return s + } + if !reflect.DeepEqual(getNames(), []string{"dummy", "foo", "dummy2"}) { + t.Fatalf("directive order doesn't match: %s", getNames()) + } + RegisterDirective("bar", nil, "ASDASD") + if !reflect.DeepEqual(getNames(), []string{"dummy", "foo", "dummy2", "bar"}) { + t.Fatalf("directive order doesn't match: %s", getNames()) + } +} |