Factor out as much of autopath into a subpackage as possible right now. apw.Sent is not needed, we should see this from the rcode returned by the middleware. See #852 on why this was needed. Disable the tests for now as to not break the main build.
26 lines
1.1 KiB
Go
26 lines
1.1 KiB
Go
package autopath
|
|
|
|
import "testing"
|
|
|
|
func TestSplitSearchPath(t *testing.T) {
|
|
type testCase struct {
|
|
question string
|
|
namespace string
|
|
expectedName string
|
|
expectedSearch string
|
|
expectedOk bool
|
|
}
|
|
tests := []testCase{
|
|
{question: "test.blah.com", namespace: "ns1", expectedName: "", expectedSearch: "", expectedOk: false},
|
|
{question: "foo.com.ns2.svc.interwebs.nets", namespace: "ns1", expectedName: "", expectedSearch: "", expectedOk: false},
|
|
{question: "foo.com.svc.interwebs.nets", namespace: "ns1", expectedName: "", expectedSearch: "", expectedOk: false},
|
|
{question: "foo.com.ns1.svc.interwebs.nets", namespace: "ns1", expectedName: "foo.com", expectedSearch: "ns1.svc.interwebs.nets", expectedOk: true},
|
|
}
|
|
zone := "interwebs.nets"
|
|
for _, c := range tests {
|
|
name, search, ok := SplitSearch(zone, c.question, c.namespace)
|
|
if c.expectedName != name || c.expectedSearch != search || c.expectedOk != ok {
|
|
t.Errorf("Case %v: Expected name'%v', search:'%v', ok:'%v'. Got name:'%v', search:'%v', ok:'%v'.", c.question, c.expectedName, c.expectedSearch, c.expectedOk, name, search, ok)
|
|
}
|
|
}
|
|
}
|