@@ -84,7 +84,7 @@ func TestNew_WithTimeoutZero(t *testing.T) {
8484
8585func TestDescribe_SingleQuery (t * testing.T ) {
8686 queries := []queryConfig {
87- {name : "router.risse.tv " , qtype : dns .TypeA , expect : "192.168.73 .1" , resultKey : "router.risse.tv " , dsName : "q0" },
87+ {name : "router.example.com " , qtype : dns .TypeA , expect : "192.168.168 .1" , resultKey : "router.example.com " , dsName : "q0" },
8888 }
8989 chk , err := New ("127.0.0.1:53" , queries )
9090 if err != nil {
@@ -101,8 +101,8 @@ func TestDescribe_SingleQuery(t *testing.T) {
101101 if m .DSName != "q0" {
102102 t .Errorf ("expected DSName 'q0', got %q" , m .DSName )
103103 }
104- if m .ResultKey != "router.risse.tv " {
105- t .Errorf ("expected ResultKey 'router.risse.tv ', got %q" , m .ResultKey )
104+ if m .ResultKey != "router.example.com " {
105+ t .Errorf ("expected ResultKey 'router.example.com ', got %q" , m .ResultKey )
106106 }
107107 if m .Unit != "ms" {
108108 t .Errorf ("expected Unit 'ms', got %q" , m .Unit )
@@ -403,9 +403,9 @@ func TestNormalizeFQDN_WithoutDot(t *testing.T) {
403403
404404func TestValidateAnswer_AMatch (t * testing.T ) {
405405 rrs := []dns.RR {
406- & dns.A {Hdr : dns.RR_Header {Rrtype : dns .TypeA }, A : net .ParseIP ("192.168.73 .1" )},
406+ & dns.A {Hdr : dns.RR_Header {Rrtype : dns .TypeA }, A : net .ParseIP ("192.168.168 .1" )},
407407 }
408- if err := validateAnswer (rrs , dns .TypeA , "192.168.73 .1" ); err != nil {
408+ if err := validateAnswer (rrs , dns .TypeA , "192.168.168 .1" ); err != nil {
409409 t .Errorf ("expected match, got: %v" , err )
410410 }
411411}
@@ -414,7 +414,7 @@ func TestValidateAnswer_ANoMatch(t *testing.T) {
414414 rrs := []dns.RR {
415415 & dns.A {Hdr : dns.RR_Header {Rrtype : dns .TypeA }, A : net .ParseIP ("10.0.0.1" )},
416416 }
417- if err := validateAnswer (rrs , dns .TypeA , "192.168.73 .1" ); err == nil {
417+ if err := validateAnswer (rrs , dns .TypeA , "192.168.168 .1" ); err == nil {
418418 t .Error ("expected mismatch error" )
419419 }
420420}
@@ -430,18 +430,18 @@ func TestValidateAnswer_AAAAMatch(t *testing.T) {
430430
431431func TestValidateAnswer_PTRMatchWithTrailingDot (t * testing.T ) {
432432 rrs := []dns.RR {
433- & dns.PTR {Hdr : dns.RR_Header {Rrtype : dns .TypePTR }, Ptr : "router.risse.tv ." },
433+ & dns.PTR {Hdr : dns.RR_Header {Rrtype : dns .TypePTR }, Ptr : "router.example.com ." },
434434 }
435- if err := validateAnswer (rrs , dns .TypePTR , "router.risse.tv ." ); err != nil {
435+ if err := validateAnswer (rrs , dns .TypePTR , "router.example.com ." ); err != nil {
436436 t .Errorf ("expected match, got: %v" , err )
437437 }
438438}
439439
440440func TestValidateAnswer_PTRMatchWithoutTrailingDot (t * testing.T ) {
441441 rrs := []dns.RR {
442- & dns.PTR {Hdr : dns.RR_Header {Rrtype : dns .TypePTR }, Ptr : "router.risse.tv ." },
442+ & dns.PTR {Hdr : dns.RR_Header {Rrtype : dns .TypePTR }, Ptr : "router.example.com ." },
443443 }
444- if err := validateAnswer (rrs , dns .TypePTR , "router.risse.tv " ); err != nil {
444+ if err := validateAnswer (rrs , dns .TypePTR , "router.example.com " ); err != nil {
445445 t .Errorf ("expected match regardless of trailing dot, got: %v" , err )
446446 }
447447}
@@ -469,13 +469,13 @@ func TestRun_AQuery_Success(t *testing.T) {
469469 m .SetReply (r )
470470 m .Answer = append (m .Answer , & dns.A {
471471 Hdr : dns.RR_Header {Name : r .Question [0 ].Name , Rrtype : dns .TypeA , Class : dns .ClassINET , Ttl : 60 },
472- A : net .ParseIP ("192.168.73 .1" ),
472+ A : net .ParseIP ("192.168.168 .1" ),
473473 })
474474 _ = w .WriteMsg (m )
475475 })
476476
477477 queries := []queryConfig {
478- {name : "router.risse.tv " , qtype : dns .TypeA , expect : "192.168.73 .1" , resultKey : "router.risse.tv " , dsName : "q0" },
478+ {name : "router.example.com " , qtype : dns .TypeA , expect : "192.168.168 .1" , resultKey : "router.example.com " , dsName : "q0" },
479479 }
480480 chk , err := New (addr , queries )
481481 if err != nil {
@@ -486,8 +486,8 @@ func TestRun_AQuery_Success(t *testing.T) {
486486 if ! result .Success {
487487 t .Errorf ("expected success, got failure: %v" , result .Err )
488488 }
489- if result .Metrics ["router.risse.tv" ] <= 0 {
490- t .Errorf ("expected positive RTT, got %d " , result .Metrics ["router.risse.tv " ])
489+ if p := result .Metrics ["router.example.com" ]; p == nil || * p <= 0 {
490+ t .Errorf ("expected positive RTT, got %v " , result .Metrics ["router.example.com " ])
491491 }
492492 if result .Timestamp .IsZero () {
493493 t .Error ("expected non-zero timestamp" )
@@ -500,13 +500,13 @@ func TestRun_PTRQuery_Success(t *testing.T) {
500500 m .SetReply (r )
501501 m .Answer = append (m .Answer , & dns.PTR {
502502 Hdr : dns.RR_Header {Name : r .Question [0 ].Name , Rrtype : dns .TypePTR , Class : dns .ClassINET , Ttl : 60 },
503- Ptr : "router.risse.tv ." ,
503+ Ptr : "router.example.com ." ,
504504 })
505505 _ = w .WriteMsg (m )
506506 })
507507
508508 queries := []queryConfig {
509- {name : "1.73 .168.192.in-addr.arpa" , qtype : dns .TypePTR , expect : "router.risse.tv ." , resultKey : "1.73 .168.192.in-addr.arpa" , dsName : "q0" },
509+ {name : "1.168 .168.192.in-addr.arpa" , qtype : dns .TypePTR , expect : "router.example.com ." , resultKey : "1.168 .168.192.in-addr.arpa" , dsName : "q0" },
510510 }
511511 chk , err := New (addr , queries )
512512 if err != nil {
@@ -552,20 +552,20 @@ func TestRun_MultipleQueries_AllSuccess(t *testing.T) {
552552 case dns .TypeA :
553553 m .Answer = append (m .Answer , & dns.A {
554554 Hdr : dns.RR_Header {Name : r .Question [0 ].Name , Rrtype : dns .TypeA , Class : dns .ClassINET , Ttl : 60 },
555- A : net .ParseIP ("192.168.73 .1" ),
555+ A : net .ParseIP ("192.168.168 .1" ),
556556 })
557557 case dns .TypePTR :
558558 m .Answer = append (m .Answer , & dns.PTR {
559559 Hdr : dns.RR_Header {Name : r .Question [0 ].Name , Rrtype : dns .TypePTR , Class : dns .ClassINET , Ttl : 60 },
560- Ptr : "router.risse.tv ." ,
560+ Ptr : "router.example.com ." ,
561561 })
562562 }
563563 _ = w .WriteMsg (m )
564564 })
565565
566566 queries := []queryConfig {
567- {name : "router.risse.tv " , qtype : dns .TypeA , expect : "192.168.73 .1" , resultKey : "router.risse.tv " , dsName : "q0" },
568- {name : "1.73 .168.192.in-addr.arpa" , qtype : dns .TypePTR , expect : "router.risse.tv ." , resultKey : "1.73 .168.192.in-addr.arpa" , dsName : "q1" },
567+ {name : "router.example.com " , qtype : dns .TypeA , expect : "192.168.168 .1" , resultKey : "router.example.com " , dsName : "q0" },
568+ {name : "1.168 .168.192.in-addr.arpa" , qtype : dns .TypePTR , expect : "router.example.com ." , resultKey : "1.168 .168.192.in-addr.arpa" , dsName : "q1" },
569569 }
570570 chk , err := New (addr , queries )
571571 if err != nil {
@@ -593,7 +593,7 @@ func TestRun_WrongAnswer_Failure(t *testing.T) {
593593 })
594594
595595 queries := []queryConfig {
596- {name : "router.risse.tv " , qtype : dns .TypeA , expect : "192.168.73 .1" , resultKey : "router.risse.tv " , dsName : "q0" },
596+ {name : "router.example.com " , qtype : dns .TypeA , expect : "192.168.168 .1" , resultKey : "router.example.com " , dsName : "q0" },
597597 }
598598 chk , err := New (addr , queries )
599599 if err != nil {
@@ -640,7 +640,7 @@ func TestRun_PartialSuccess_Failure(t *testing.T) {
640640 if call == 1 {
641641 m .Answer = append (m .Answer , & dns.A {
642642 Hdr : dns.RR_Header {Name : r .Question [0 ].Name , Rrtype : dns .TypeA , Class : dns .ClassINET , Ttl : 60 },
643- A : net .ParseIP ("192.168.73 .1" ),
643+ A : net .ParseIP ("192.168.168 .1" ),
644644 })
645645 } else {
646646 m .Rcode = dns .RcodeNameError
@@ -649,7 +649,7 @@ func TestRun_PartialSuccess_Failure(t *testing.T) {
649649 })
650650
651651 queries := []queryConfig {
652- {name : "router.risse.tv " , qtype : dns .TypeA , expect : "192.168.73 .1" , resultKey : "router.risse.tv " , dsName : "q0" },
652+ {name : "router.example.com " , qtype : dns .TypeA , expect : "192.168.168 .1" , resultKey : "router.example.com " , dsName : "q0" },
653653 {name : "missing.example.com" , qtype : dns .TypeA , expect : "5.6.7.8" , resultKey : "missing.example.com" , dsName : "q1" },
654654 }
655655 chk , err := New (addr , queries )
@@ -661,8 +661,14 @@ func TestRun_PartialSuccess_Failure(t *testing.T) {
661661 if result .Success {
662662 t .Error ("expected failure when one query fails" )
663663 }
664- if len (result .Metrics ) != 1 {
665- t .Errorf ("expected 1 successful metric, got %d" , len (result .Metrics ))
664+ if len (result .Metrics ) != 2 {
665+ t .Errorf ("expected 2 metrics (one nil, one non-nil), got %d" , len (result .Metrics ))
666+ }
667+ if result .Metrics ["router.example.com" ] == nil {
668+ t .Error ("expected non-nil metric for successful query" )
669+ }
670+ if result .Metrics ["missing.example.com" ] != nil {
671+ t .Error ("expected nil metric for failed query" )
666672 }
667673}
668674
0 commit comments