aboutsummaryrefslogtreecommitdiff
path: root/plugin/rewrite/setup_test.go
diff options
context:
space:
mode:
authorGravatar Chris O'Haver <cohaver@infoblox.com> 2018-04-25 15:48:32 -0400
committerGravatar Miek Gieben <miek@miek.nl> 2018-04-25 20:48:32 +0100
commit5e06687ee5a9522bfc4faa9b8f2adf6103eb016d (patch)
tree8a061b71238ed746b860059aa85eb5ba78176ec3 /plugin/rewrite/setup_test.go
parent9e8893a0b5325a76b2784958bbe743ff3e831401 (diff)
downloadcoredns-5e06687ee5a9522bfc4faa9b8f2adf6103eb016d.tar.gz
coredns-5e06687ee5a9522bfc4faa9b8f2adf6103eb016d.tar.zst
coredns-5e06687ee5a9522bfc4faa9b8f2adf6103eb016d.zip
plugin/rewrite: tweak parse error messaging, add tests (#1737)
* tweak parse error messaging, add tests * looser err msg checking
Diffstat (limited to 'plugin/rewrite/setup_test.go')
-rw-r--r--plugin/rewrite/setup_test.go42
1 files changed, 42 insertions, 0 deletions
diff --git a/plugin/rewrite/setup_test.go b/plugin/rewrite/setup_test.go
index 67ef88e18..a8a8349b4 100644
--- a/plugin/rewrite/setup_test.go
+++ b/plugin/rewrite/setup_test.go
@@ -1,6 +1,7 @@
package rewrite
import (
+ "strings"
"testing"
"github.com/mholt/caddy"
@@ -22,4 +23,45 @@ func TestParse(t *testing.T) {
if err != nil {
t.Errorf("Expected success but found %s for `rewrite name a.com b.com`", err)
}
+
+ c = caddy.NewTestController("dns",
+ `rewrite stop {
+ name regex foo bar
+ answer name bar foo
+}`)
+ _, err = rewriteParse(c)
+ if err != nil {
+ t.Errorf("Expected success but found %s for valid response rewrite", err)
+ }
+
+ c = caddy.NewTestController("dns", `rewrite stop name regex foo bar answer name bar foo`)
+ _, err = rewriteParse(c)
+ if err != nil {
+ t.Errorf("Expected success but found %s for valid response rewrite", err)
+ }
+
+ c = caddy.NewTestController("dns",
+ `rewrite stop {
+ name regex foo bar
+ answer name bar foo
+ name baz qux
+}`)
+ _, err = rewriteParse(c)
+ if err == nil {
+ t.Errorf("Expected error but got success for invalid response rewrite")
+ } else if !strings.Contains(err.Error(), "must consist only of") {
+ t.Errorf("Got wrong error for invalid response rewrite: %v", err.Error())
+ }
+
+ c = caddy.NewTestController("dns",
+ `rewrite stop {
+ answer name bar foo
+ name regex foo bar
+}`)
+ _, err = rewriteParse(c)
+ if err == nil {
+ t.Errorf("Expected error but got success for invalid response rewrite")
+ } else if !strings.Contains(err.Error(), "must begin with a name rule") {
+ t.Errorf("Got wrong error for invalid response rewrite: %v", err.Error())
+ }
}