From 4f4798e4bf3ee5f8d91512fae8cd6019a7b35523 Mon Sep 17 00:00:00 2001 From: Simone Basso Date: Thu, 30 Nov 2023 13:10:34 +0100 Subject: [PATCH] feat(minipipeline): add metrics required by LTE compat analysis mode (#1415) This diff implements the following useful metrics: * DNSLookupSuccessWithValidAddress * DNSLookupSuccessWithValidAddressClassic * DNSLookupExpectedFailure * DNSLookupExpectedSuccess * HTTPFinalResponseSuccessTCPWithoutControl It also renames the HTTPDiff metrics for consistency, by adding an HTTPFinalResponse prefix to names. It also reimplements DNSExperimentFailure in terms of a generic DNS data collection function. And it also moves the definition of this variable to be near the top of the structure. I have also removed some tests. While in general this goes against my """religion""", I think I had added tests too prematurely and I need to move a bit faster to make this work converge. (Also, there are still several many tests that deal with producing data, which is why we have so much churn at every diff that changes the minipipeline. Also, the tests I am removing were only to cover corner cases, so I think it's overall justifiable to do this.) Part of https://github.com/ooni/probe/issues/2634 --- .../cmd/minipipeline/testdata/analysis.json | 17 ++- .../testdata/analysis_classic.json | 17 ++- internal/minipipeline/analysis.go | 109 ++++++++---------- internal/minipipeline/analysis_test.go | 74 ------------ .../analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 23 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 15 ++- .../analysis_classic.json | 15 ++- .../badSSLWithWrongServerName/analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 17 ++- .../analysis_classic.json | 17 ++- .../analysis.json | 17 ++- .../analysis_classic.json | 17 ++- .../analysis.json | 19 ++- .../analysis_classic.json | 15 ++- .../generated/dnsBlockingBOGON/analysis.json | 19 ++- .../dnsBlockingBOGON/analysis_classic.json | 15 ++- .../dnsBlockingNXDOMAIN/analysis.json | 19 ++- .../dnsBlockingNXDOMAIN/analysis_classic.json | 15 ++- .../analysis.json | 17 ++- .../analysis_classic.json | 17 ++- .../analysis.json | 17 ++- .../analysis_classic.json | 17 ++- .../httpBlockingConnectionReset/analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../httpDiffWithConsistentDNS/analysis.json | 21 +++- .../analysis_classic.json | 20 +++- .../httpDiffWithInconsistentDNS/analysis.json | 17 ++- .../analysis_classic.json | 17 ++- .../analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 21 +++- .../analysis_classic.json | 20 +++- .../analysis.json | 21 +++- .../analysis_classic.json | 20 +++- .../analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 21 +++- .../analysis_classic.json | 20 +++- .../analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 23 +++- .../analysis_classic.json | 19 ++- .../generated/successWithHTTP/analysis.json | 21 +++- .../successWithHTTP/analysis_classic.json | 20 +++- .../generated/successWithHTTPS/analysis.json | 21 +++- .../successWithHTTPS/analysis_classic.json | 20 +++- .../tcpBlockingConnectTimeout/analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 15 ++- .../analysis_classic.json | 15 ++- .../analysis.json | 21 +++- .../analysis_classic.json | 19 ++- .../analysis.json | 15 ++- .../analysis_classic.json | 15 ++- .../websiteDownNXDOMAIN/analysis.json | 18 ++- .../websiteDownNXDOMAIN/analysis_classic.json | 17 ++- .../manual/dnsgoogle80/analysis.json | 17 ++- .../manual/dnsgoogle80/analysis_classic.json | 17 ++- .../manual/noipv6/analysis.json | 17 ++- .../manual/noipv6/analysis_classic.json | 17 ++- .../manual/youtube/analysis.json | 18 ++- .../manual/youtube/analysis_classic.json | 17 ++- 70 files changed, 973 insertions(+), 474 deletions(-) delete mode 100644 internal/minipipeline/analysis_test.go diff --git a/internal/cmd/minipipeline/testdata/analysis.json b/internal/cmd/minipipeline/testdata/analysis.json index 56db01054..63df47f53 100644 --- a/internal/cmd/minipipeline/testdata/analysis.json +++ b/internal/cmd/minipipeline/testdata/analysis.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 3 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,14 +24,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 4, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "x-drupal-cache": true, "x-generator": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/cmd/minipipeline/testdata/analysis_classic.json b/internal/cmd/minipipeline/testdata/analysis_classic.json index e8f4d688a..16401b92c 100644 --- a/internal/cmd/minipipeline/testdata/analysis_classic.json +++ b/internal/cmd/minipipeline/testdata/analysis_classic.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 3 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,14 +24,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 4, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "x-drupal-cache": true, "x-generator": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/analysis.go b/internal/minipipeline/analysis.go index 5274bbb5d..29d099e5a 100644 --- a/internal/minipipeline/analysis.go +++ b/internal/minipipeline/analysis.go @@ -19,9 +19,7 @@ func AnalyzeWebObservations(container *WebObservationsContainer) *WebAnalysis { analysis.httpComputeFailureMetrics(container) analysis.httpComputeFinalResponseMetrics(container) - analysis.ComputeDNSExperimentFailure(container) analysis.ComputeDNSPossiblyNonexistingDomains(container) - return analysis } @@ -33,13 +31,29 @@ type WebAnalysis struct { // taking into account control info, bogons, and TLS handshakes. DNSLookupSuccessWithInvalidAddresses Set[int64] + // DNSLookupSuccessWithValidAddress contains DNS transactions with valid IP addresses. + DNSLookupSuccessWithValidAddress Set[int64] + // DNSLookupSuccessWithInvalidAddressesClassic is like DNSLookupInvalid but the algorithm is more relaxed // to be compatible with Web Connectivity v0.4's behavior. DNSLookupSuccessWithInvalidAddressesClassic Set[int64] + // DNSLookupSuccessWithValidAddressClassic contains DNS transactions with valid IP addresses. + DNSLookupSuccessWithValidAddressClassic Set[int64] + // DNSLookupUnexpectedFailure contains DNS transactions with unexpected failures. DNSLookupUnexpectedFailure Set[int64] + // DNSExperimentFailure is the first failure experienced by any resolver + // before hitting redirects (i.e., when TagDepth==0). + DNSExperimentFailure optional.Value[string] + + // DNSLookupExpectedFailure contains DNS transactions with expected failures. + DNSLookupExpectedFailure Set[int64] + + // DNSLookupExpectedSuccess contains DNS transactions with expected successes. + DNSLookupExpectedSuccess Set[int64] + // TCPConnectUnexpectedFailure contains TCP endpoint transactions with unexpected failures. TCPConnectUnexpectedFailure Set[int64] @@ -95,28 +109,29 @@ type WebAnalysis struct { // transaction when the final response succeeded with control and with TLS. HTTPFinalResponseSuccessTLSWithControl optional.Value[int64] + // HTTPFinalResponseSuccessTCPWithoutControl contains the ID of the final response + // transaction when the final response succeeded without control and with TCP. + HTTPFinalResponseSuccessTCPWithoutControl optional.Value[int64] + // HTTPFinalResponseSuccessTCPWithControl contains the ID of the final response // transaction when the final response succeeded with control and with TCP. HTTPFinalResponseSuccessTCPWithControl optional.Value[int64] - // HTTPDiffBodyProportionFactor is the body proportion factor. - HTTPDiffBodyProportionFactor optional.Value[float64] + // HTTPFinalResponseDiffBodyProportionFactor is the body proportion factor. + HTTPFinalResponseDiffBodyProportionFactor optional.Value[float64] - // HTTPDiffStatusCodeMatch returns whether the status code matches. - HTTPDiffStatusCodeMatch optional.Value[bool] + // HTTPFinalResponseDiffStatusCodeMatch returns whether the status code matches. + HTTPFinalResponseDiffStatusCodeMatch optional.Value[bool] - // HTTPDiffTitleDifferentLongWords contains the words long 5+ characters that appear + // HTTPFinalResponseDiffTitleDifferentLongWords contains the words long 5+ characters that appear // in the probe's "final" response title or in the TH title but not in both. - HTTPDiffTitleDifferentLongWords optional.Value[map[string]bool] + HTTPFinalResponseDiffTitleDifferentLongWords optional.Value[map[string]bool] - // HTTPDiffUncommonHeadersIntersection contains the uncommon headers intersection. - HTTPDiffUncommonHeadersIntersection optional.Value[map[string]bool] + // HTTPFinalResponseDiffUncommonHeadersIntersection contains the uncommon headers intersection. + HTTPFinalResponseDiffUncommonHeadersIntersection optional.Value[map[string]bool] // TODO(bassosimone): there are probably redundant metrics from this point on - // DNSExperimentFailure is the first failure experienced by a getaddrinfo-like resolver. - DNSExperimentFailure optional.Value[string] - // DNSPossiblyNonexistingDomains lists all the domains for which both // the probe and the TH failed to perform DNS lookups. DNSPossiblyNonexistingDomains optional.Value[map[string]bool] @@ -154,11 +169,13 @@ func (wa *WebAnalysis) dnsComputeSuccessMetrics(c *WebObservationsContainer) { // this lookup is good if there is IP addresses intersection if DNSDiffFindCommonIPAddressIntersection(measurement, control).Len() > 0 { + wa.DNSLookupSuccessWithValidAddress.Add(obs.DNSTransactionID.Unwrap()) continue } // this lookup is good if there is ASN intersection if DNSDiffFindCommonASNsIntersection(measurement, control).Len() > 0 { + wa.DNSLookupSuccessWithValidAddress.Add(obs.DNSTransactionID.Unwrap()) continue } @@ -181,6 +198,7 @@ func (wa *WebAnalysis) dnsComputeSuccessMetrics(c *WebObservationsContainer) { // this is actually valid wa.DNSLookupSuccessWithInvalidAddresses.Remove(txid) + wa.DNSLookupSuccessWithValidAddress.Add(txid) } } @@ -210,11 +228,13 @@ func (wa *WebAnalysis) dnsComputeSuccessMetricsClassic(c *WebObservationsContain // this lookup is good if there is IP addresses intersection if DNSDiffFindCommonIPAddressIntersection(measurement, control).Len() > 0 { + wa.DNSLookupSuccessWithValidAddressClassic.Add(obs.DNSTransactionID.Unwrap()) continue } // this lookup is good if there is ASN intersection if DNSDiffFindCommonASNsIntersection(measurement, control).Len() > 0 { + wa.DNSLookupSuccessWithValidAddressClassic.Add(obs.DNSTransactionID.Unwrap()) continue } @@ -254,6 +274,13 @@ func (wa *WebAnalysis) dnsComputeFailureMetrics(c *WebObservationsContainer) { // TODO(bassosimone): if we set an IPv6 address as the resolver address, we // end up with false positive errors when there's no IPv6 support + // honor the DNSExperimentFailure by assigning the first + // probe error that we see with depth==0 + if obs.DNSLookupFailure.Unwrap() != "" && wa.DNSExperimentFailure.IsNone() { + wa.DNSExperimentFailure = obs.DNSLookupFailure + // fallthrough + } + // handle the case where there's no control if obs.ControlDNSLookupFailure.IsNone() { continue @@ -261,6 +288,7 @@ func (wa *WebAnalysis) dnsComputeFailureMetrics(c *WebObservationsContainer) { // handle the case where both failed if obs.DNSLookupFailure.Unwrap() != "" && obs.ControlDNSLookupFailure.Unwrap() != "" { + wa.DNSLookupExpectedFailure.Add(obs.DNSTransactionID.Unwrap()) continue } @@ -274,6 +302,9 @@ func (wa *WebAnalysis) dnsComputeFailureMetrics(c *WebObservationsContainer) { wa.DNSLookupUnexpectedFailure.Add(obs.DNSTransactionID.Unwrap()) continue } + + // handle the case where both succeed + wa.DNSLookupExpectedSuccess.Add(obs.DNSTransactionID.Unwrap()) } } @@ -441,6 +472,7 @@ func (wa *WebAnalysis) httpHandleFinalResponse(obs *WebObservation) { wa.HTTPFinalResponseSuccessTLSWithoutControl = obs.EndpointTransactionID return } + wa.HTTPFinalResponseSuccessTCPWithoutControl = obs.EndpointTransactionID return } @@ -479,7 +511,7 @@ func (wa *WebAnalysis) httpDiffBodyProportionFactor(obs *WebObservation) { // compute the body proportion factor and update the state proportion := ComputeHTTPDiffBodyProportionFactor(measurement, control) - wa.HTTPDiffBodyProportionFactor = optional.Some(proportion) + wa.HTTPFinalResponseDiffBodyProportionFactor = optional.Some(proportion) } func (wa *WebAnalysis) httpDiffStatusCodeMatch(obs *WebObservation) { @@ -499,7 +531,7 @@ func (wa *WebAnalysis) httpDiffStatusCodeMatch(obs *WebObservation) { } // update state - wa.HTTPDiffStatusCodeMatch = ComputeHTTPDiffStatusCodeMatch(measurement, control) + wa.HTTPFinalResponseDiffStatusCodeMatch = ComputeHTTPDiffStatusCodeMatch(measurement, control) } func (wa *WebAnalysis) httpDiffUncommonHeadersIntersection(obs *WebObservation) { @@ -522,7 +554,7 @@ func (wa *WebAnalysis) httpDiffUncommonHeadersIntersection(obs *WebObservation) control := obs.ControlHTTPResponseHeadersKeys.UnwrapOr(nil) state := ComputeHTTPDiffUncommonHeadersIntersection(measurement, control) - wa.HTTPDiffUncommonHeadersIntersection = optional.Some(state) + wa.HTTPFinalResponseDiffUncommonHeadersIntersection = optional.Some(state) } func (wa *WebAnalysis) httpDiffTitleDifferentLongWords(obs *WebObservation) { @@ -542,50 +574,7 @@ func (wa *WebAnalysis) httpDiffTitleDifferentLongWords(obs *WebObservation) { state := ComputeHTTPDiffTitleDifferentLongWords(measurement, control) - wa.HTTPDiffTitleDifferentLongWords = optional.Some(state) -} - -// ComputeDNSExperimentFailure computes the DNSExperimentFailure field. -func (wa *WebAnalysis) ComputeDNSExperimentFailure(c *WebObservationsContainer) { - - for _, obs := range c.DNSLookupFailures { - // make sure we have probe domain - probeDomain := obs.DNSDomain.UnwrapOr("") - if probeDomain == "" { - continue - } - - // make sure we have TH domain - thDomain := obs.ControlDNSDomain.UnwrapOr("") - if thDomain == "" { - continue - } - - // we only care about cases where we're resolving the same domain - if probeDomain != thDomain { - continue - } - - // as documented, only include the system resolver - if !utilsEngineIsGetaddrinfo(obs.DNSEngine) { - continue - } - - // skip cases where there's no DNS record for AAAA, which is a false positive - // - // in principle, this should not happen with getaddrinfo, but we add this - // check nonetheless for robustness against this corner case - if utilsDNSLookupFailureIsDNSNoAnswerForAAAA(obs) { - continue - } - - // only record the first failure - // - // we should only consider the first DNS lookup to be consistent with - // what was previously returned by Web Connectivity v0.4 - wa.DNSExperimentFailure = obs.DNSLookupFailure - return - } + wa.HTTPFinalResponseDiffTitleDifferentLongWords = optional.Some(state) } // ComputeDNSPossiblyNonexistingDomains computes the DNSPossiblyNonexistingDomains field. diff --git a/internal/minipipeline/analysis_test.go b/internal/minipipeline/analysis_test.go deleted file mode 100644 index 35480f204..000000000 --- a/internal/minipipeline/analysis_test.go +++ /dev/null @@ -1,74 +0,0 @@ -package minipipeline - -import ( - "testing" - - "github.com/ooni/probe-cli/v3/internal/optional" -) - -func TestWebAnalysisComputeDNSExperimentFailure(t *testing.T) { - t.Run("when there's no DNSDomain", func(t *testing.T) { - container := &WebObservationsContainer{ - DNSLookupFailures: []*WebObservation{ - { - DNSTransactionID: optional.Some(int64(1)), - DNSDomain: optional.None[string](), // explicitly set - DNSLookupFailure: optional.Some("dns_no_answer"), - DNSQueryType: optional.Some("A"), - DNSEngine: optional.Some("getaddrinfo"), - }, - }, - } - - wa := &WebAnalysis{} - wa.ComputeDNSExperimentFailure(container) - - if !wa.DNSExperimentFailure.IsNone() { - t.Fatal("DNSExperimentFailure is not none") - } - }) - - t.Run("when DNSDomain does not match ControlDNSDomain", func(t *testing.T) { - container := &WebObservationsContainer{ - DNSLookupFailures: []*WebObservation{ - { - DNSTransactionID: optional.Some(int64(1)), - DNSDomain: optional.Some("dns.google.com"), - DNSLookupFailure: optional.Some("dns_no_answer"), - DNSQueryType: optional.Some("A"), - DNSEngine: optional.Some("getaddrinfo"), - ControlDNSDomain: optional.Some("dns.google"), - }, - }, - } - - wa := &WebAnalysis{} - wa.ComputeDNSExperimentFailure(container) - - if !wa.DNSExperimentFailure.IsNone() { - t.Fatal("DNSExperimentFailure is not none") - } - }) - - t.Run("when the failure is dns_no_answer for AAAA", func(t *testing.T) { - container := &WebObservationsContainer{ - DNSLookupFailures: []*WebObservation{ - { - DNSTransactionID: optional.Some(int64(1)), - DNSDomain: optional.Some("dns.google.com"), - DNSLookupFailure: optional.Some("dns_no_answer"), - DNSQueryType: optional.Some("AAAA"), - DNSEngine: optional.Some("getaddrinfo"), - ControlDNSDomain: optional.Some("dns.google.com"), - }, - }, - } - - wa := &WebAnalysis{} - wa.ComputeDNSExperimentFailure(container) - - if !wa.DNSExperimentFailure.IsNone() { - t.Fatal("DNSExperimentFailure is not none") - } - }) -} diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis.json index 96f10aff5..1d83fa269 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +28,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis_classic.json index cd35dbb23..be0c0442f 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithExpiredCertificate/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +26,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis.json index 96f10aff5..26acd175d 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis.json @@ -1,7 +1,20 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2, + 3 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2, + 3 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis_classic.json index cd35dbb23..be0c0442f 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithConsistentDNS/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +26,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json index 3a2b33eba..0fb4b1c2f 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json @@ -3,11 +3,16 @@ 1, 2 ], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1, 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -23,14 +28,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 4, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json index 9490f36fa..75146fc73 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json @@ -2,10 +2,15 @@ "DNSLookupSuccessWithInvalidAddresses": [ 2 ], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [ 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +26,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis.json index 96f10aff5..1d83fa269 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +28,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis_classic.json index cd35dbb23..be0c0442f 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithWrongServerName/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +26,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis.json index a42cb0d6b..bc0fa5e4b 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +24,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": 3, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis_classic.json index a42cb0d6b..bc0fa5e4b 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPSWebsite/analysis_classic.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +24,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": 3, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis.json index cd35dbb23..33fbc9053 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +24,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": 3, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis_classic.json index cd35dbb23..33fbc9053 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/controlFailureWithSuccessfulHTTPWebsite/analysis_classic.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +24,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": 3, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis.json index c3240e110..7cd5c97dd 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis.json @@ -1,9 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [ 1 ], + "DNSExperimentFailure": "android_dns_cache_no_data", + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,14 +28,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 3, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": "android_dns_cache_no_data", "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis_classic.json index 9e4e7d678..15398912a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingAndroidDNSCacheNoData/analysis_classic.json @@ -1,9 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [ 1 ], + "DNSExperimentFailure": "android_dns_cache_no_data", + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,11 +24,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": "android_dns_cache_no_data", + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis.json index 9b9c9d193..7fee6691a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis.json @@ -2,10 +2,19 @@ "DNSLookupSuccessWithInvalidAddresses": [ 1 ], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1 ], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,14 +30,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 3, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis_classic.json index dcc55cdb5..dd43c1038 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingBOGON/analysis_classic.json @@ -2,10 +2,15 @@ "DNSLookupSuccessWithInvalidAddresses": [ 1 ], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +26,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis.json index ecea5cfab..a08799ab7 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis.json @@ -1,9 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [ 2 ], + "DNSExperimentFailure": "dns_nxdomain_error", + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,14 +28,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 3, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": "dns_nxdomain_error", "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis_classic.json index 7b6a7f0ef..b80999e7d 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsBlockingNXDOMAIN/analysis_classic.json @@ -1,9 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [ 2 ], + "DNSExperimentFailure": "dns_nxdomain_error", + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,11 +24,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": "dns_nxdomain_error", + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis.json index dff72330e..50667e2a1 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis.json @@ -2,11 +2,18 @@ "DNSLookupSuccessWithInvalidAddresses": [ 1 ], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1, 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -22,14 +29,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 3, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis_classic.json index dc2d69781..9c2a6a7da 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPSURL/analysis_classic.json @@ -1,9 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [ 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,14 +26,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 3, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json index c577f2b42..267554376 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json @@ -2,11 +2,18 @@ "DNSLookupSuccessWithInvalidAddresses": [ 1 ], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1, 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -22,13 +29,13 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json index b4c65cc80..dcd99d387 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json @@ -1,9 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [ 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,13 +26,13 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis.json index 97d5c8423..799739b25 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,11 +30,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis_classic.json index 6d4a4ed05..7ba1090eb 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/httpBlockingConnectionReset/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,11 +28,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis.json index 7a42aae8d..78397ccb8 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,15 +28,15 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 0.12263535551206783, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.12263535551206783, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": { "access": true, "default": true, "denied": true }, - "HTTPDiffUncommonHeadersIntersection": {}, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": {}, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis_classic.json index 329cf6865..45fcacf75 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithConsistentDNS/analysis_classic.json @@ -1,7 +1,17 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,15 +27,15 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 0.12263535551206783, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.12263535551206783, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": { "access": true, "default": true, "denied": true }, - "HTTPDiffUncommonHeadersIntersection": {}, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": {}, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis.json index 7ef8322c9..046e5b9f8 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis.json @@ -2,11 +2,18 @@ "DNSLookupSuccessWithInvalidAddresses": [ 1 ], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1, 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -22,15 +29,15 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 0.12263535551206783, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.12263535551206783, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": { "access": true, "default": true, "denied": true }, - "HTTPDiffUncommonHeadersIntersection": {}, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": {}, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis_classic.json index 12a247edf..ace161636 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/httpDiffWithInconsistentDNS/analysis_classic.json @@ -1,9 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [ 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -19,15 +26,15 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 0.12263535551206783, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.12263535551206783, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": { "access": true, "default": true, "denied": true }, - "HTTPDiffUncommonHeadersIntersection": {}, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": {}, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis.json index 7206672c8..64de11e80 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -24,11 +35,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis_classic.json index 53c823100..a1e35b70f 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTP/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -24,11 +33,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis.json index da6862e0b..5472ca462 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +32,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis_classic.json index 5fa41e041..fb3890838 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionRefusedForHTTPS/analysis_classic.json @@ -1,7 +1,17 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +31,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis.json index 0d57af183..5fbc95ec2 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -23,11 +34,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis_classic.json index ac20d734b..0b2d94b11 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTP/analysis_classic.json @@ -1,7 +1,17 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -23,11 +33,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis.json index 092c94f0a..6705a44d1 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +32,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis_classic.json index 2804c83d4..35bc58726 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenConnectionResetForHTTPS/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis.json index 0d57af183..5fbc95ec2 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -23,11 +34,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis_classic.json index ac20d734b..ca3bde64c 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTP/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -23,11 +32,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis.json index 092c94f0a..6705a44d1 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +32,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis_classic.json index 2804c83d4..0f1b10dbd 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenEOFForHTTPS/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis.json index 96f10aff5..1d83fa269 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +28,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis_classic.json index cd35dbb23..2dba858a1 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenNXDOMAIN/analysis_classic.json @@ -1,7 +1,17 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +27,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis.json index 0d57af183..5fbc95ec2 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -23,11 +34,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis_classic.json index ac20d734b..6f336bc15 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTP/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -23,11 +32,11 @@ ], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis.json index 2bfae34de..417334e67 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis.json @@ -1,7 +1,20 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2, + 3 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2, + 3 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +34,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis_classic.json index 3e140388f..329c6276a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/redirectWithConsistentDNSAndThenTimeoutForHTTPS/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis.json index a09bfd7c9..f689adc8a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,14 +28,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis_classic.json index 6138d3091..0e2f06f06 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTP/analysis_classic.json @@ -1,7 +1,17 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,14 +27,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 3, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis.json index f17371c67..8542ab3b8 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,14 +28,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 3, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis_classic.json index fd8f185b3..071e36f4d 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/successWithHTTPS/analysis_classic.json @@ -1,7 +1,17 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,14 +27,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 3, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis.json index dc37f9c26..1749c4c19 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [ 3 ], @@ -21,11 +32,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis_classic.json index 64bf92ee3..4d0d3dc58 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectTimeout/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [ 3 ], @@ -21,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json index c0415edc3..958fc1e09 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json @@ -3,11 +3,16 @@ 1, 2 ], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1, 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [ 3 ], @@ -27,14 +32,14 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": 5, - "HTTPDiffBodyProportionFactor": 1, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 1, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "alt-svc": true, "content-length": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json index bc20ee554..c32fd8482 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json @@ -2,10 +2,15 @@ "DNSLookupSuccessWithInvalidAddresses": [ 1 ], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [ 3 ], @@ -25,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis.json index 74073c859..a953b5b5a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis.json @@ -1,7 +1,18 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 1, + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +32,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis_classic.json index 5430da090..39ad5eb96 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithConsistentDNS/analysis_classic.json @@ -1,7 +1,16 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [ + 2 + ], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -21,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json index 3516b7a36..4c2661061 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json @@ -3,11 +3,16 @@ 1, 2 ], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [ 1, 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -29,11 +34,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": {} } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json index 9dc60bd3b..ce937b499 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json @@ -2,10 +2,15 @@ "DNSLookupSuccessWithInvalidAddresses": [ 2 ], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [ 2 ], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -25,11 +30,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis.json index d1fbb25b0..9caccaf79 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis.json @@ -1,7 +1,15 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": "dns_nxdomain_error", + "DNSLookupExpectedFailure": [ + 1, + 2 + ], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,12 +25,12 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": "dns_nxdomain_error", + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": { "www.example.xyz": true } diff --git a/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis_classic.json index d1fbb25b0..f8046188e 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/websiteDownNXDOMAIN/analysis_classic.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": "dns_nxdomain_error", + "DNSLookupExpectedFailure": [ + 2 + ], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,12 +24,12 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": "dns_nxdomain_error", + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": { "www.example.xyz": true } diff --git a/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis.json b/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis.json index 424d85a5d..d67664afb 100644 --- a/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -22,11 +29,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis_classic.json index 424d85a5d..d67664afb 100644 --- a/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/manual/dnsgoogle80/analysis_classic.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -22,11 +29,11 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": null, - "HTTPDiffStatusCodeMatch": null, - "HTTPDiffTitleDifferentLongWords": null, - "HTTPDiffUncommonHeadersIntersection": null, - "DNSExperimentFailure": null, + "HTTPFinalResponseDiffBodyProportionFactor": null, + "HTTPFinalResponseDiffStatusCodeMatch": null, + "HTTPFinalResponseDiffTitleDifferentLongWords": null, + "HTTPFinalResponseDiffUncommonHeadersIntersection": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis.json b/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis.json index 497580b85..b95d96031 100644 --- a/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +24,12 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 8, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 0.6166324592304209, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.6166324592304209, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "accept-ch": true, "alt-svc": true, "cross-origin-opener-policy": true, @@ -29,6 +37,5 @@ "permissions-policy": true, "report-to": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis_classic.json index 497580b85..b95d96031 100644 --- a/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/manual/noipv6/analysis_classic.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +24,12 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 8, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 0.6166324592304209, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.6166324592304209, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "accept-ch": true, "alt-svc": true, "cross-origin-opener-policy": true, @@ -29,6 +37,5 @@ "permissions-policy": true, "report-to": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis.json b/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis.json index dc12f8047..97afa28af 100644 --- a/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis.json @@ -1,7 +1,15 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1, + 2 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +25,12 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 8, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 0.6327409384828159, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.6327409384828159, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "accept-ch": true, "alt-svc": true, "cross-origin-opener-policy": true, @@ -29,6 +38,5 @@ "permissions-policy": true, "report-to": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file diff --git a/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis_classic.json index dc12f8047..1e06944fa 100644 --- a/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/manual/youtube/analysis_classic.json @@ -1,7 +1,14 @@ { "DNSLookupSuccessWithInvalidAddresses": [], + "DNSLookupSuccessWithValidAddress": [ + 1 + ], "DNSLookupSuccessWithInvalidAddressesClassic": [], + "DNSLookupSuccessWithValidAddressClassic": [], "DNSLookupUnexpectedFailure": [], + "DNSExperimentFailure": null, + "DNSLookupExpectedFailure": [], + "DNSLookupExpectedSuccess": [], "TCPConnectUnexpectedFailure": [], "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], @@ -17,11 +24,12 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": 8, + "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, - "HTTPDiffBodyProportionFactor": 0.6327409384828159, - "HTTPDiffStatusCodeMatch": true, - "HTTPDiffTitleDifferentLongWords": {}, - "HTTPDiffUncommonHeadersIntersection": { + "HTTPFinalResponseDiffBodyProportionFactor": 0.6327409384828159, + "HTTPFinalResponseDiffStatusCodeMatch": true, + "HTTPFinalResponseDiffTitleDifferentLongWords": {}, + "HTTPFinalResponseDiffUncommonHeadersIntersection": { "accept-ch": true, "alt-svc": true, "cross-origin-opener-policy": true, @@ -29,6 +37,5 @@ "permissions-policy": true, "report-to": true }, - "DNSExperimentFailure": null, "DNSPossiblyNonexistingDomains": null } \ No newline at end of file