aboutsummaryrefslogtreecommitdiff
path: root/middleware/file/lookup_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'middleware/file/lookup_test.go')
-rw-r--r--middleware/file/lookup_test.go50
1 files changed, 40 insertions, 10 deletions
diff --git a/middleware/file/lookup_test.go b/middleware/file/lookup_test.go
index 9b4e31cc8..6f9f59251 100644
--- a/middleware/file/lookup_test.go
+++ b/middleware/file/lookup_test.go
@@ -14,6 +14,16 @@ import (
var dnsTestCases = []coretest.Case{
{
+ Qname: "www.miek.nl.", Qtype: dns.TypeA,
+ Answer: []dns.RR{
+ coretest.CNAME("www.miek.nl. 1800 IN CNAME a.miek.nl."),
+ },
+
+ Extra: []dns.RR{
+ coretest.A("a.miek.nl. 1800 IN A 139.162.196.78"),
+ },
+ },
+ {
Qname: "miek.nl.", Qtype: dns.TypeSOA,
Answer: []dns.RR{
coretest.SOA("miek.nl. 1800 IN SOA linode.atoom.net. miek.miek.nl. 1282630057 14400 3600 604800 14400"),
@@ -36,16 +46,6 @@ var dnsTestCases = []coretest.Case{
},
},
{
- Qname: "www.miek.nl.", Qtype: dns.TypeA,
- Answer: []dns.RR{
- coretest.CNAME("www.miek.nl. 1800 IN CNAME a.miek.nl."),
- },
-
- Extra: []dns.RR{
- coretest.A("a.miek.nl. 1800 IN A 139.162.196.78"),
- },
- },
- {
Qname: "a.miek.nl.", Qtype: dns.TypeSRV,
Ns: []dns.RR{
coretest.SOA("miek.nl. 1800 IN SOA linode.atoom.net. miek.miek.nl. 1282630057 14400 3600 604800 14400"),
@@ -124,6 +124,36 @@ func TestLookup(t *testing.T) {
}
}
+func BenchmarkLookup(b *testing.B) {
+ zone, err := Parse(strings.NewReader(dbMiekNL), testzone, "stdin")
+ if err != nil {
+ return
+ }
+
+ fm := File{Next: coretest.ErrorHandler(), Zones: Zones{Z: map[string]*Zone{testzone: zone}, Names: []string{testzone}}}
+ ctx := context.TODO()
+ rec := middleware.NewResponseRecorder(&middleware.TestResponseWriter{})
+
+ tc := coretest.Case{
+ Qname: "www.miek.nl.", Qtype: dns.TypeA,
+ Answer: []dns.RR{
+ coretest.CNAME("www.miek.nl. 1800 IN CNAME a.miek.nl."),
+ },
+
+ Extra: []dns.RR{
+ coretest.A("a.miek.nl. 1800 IN A 139.162.196.78"),
+ },
+ }
+
+ m := tc.Msg()
+
+ b.ResetTimer()
+
+ for i := 0; i < b.N; i++ {
+ fm.ServeDNS(ctx, rec, m)
+ }
+}
+
const dbMiekNL = `
$TTL 30M
$ORIGIN miek.nl.