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 56db010542..63df47f530 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 e8f4d688a8..16401b92ce 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 5274bbb5d1..29d099e5a8 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 35480f204a..0000000000 --- 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 96f10aff53..1d83fa2694 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 cd35dbb239..be0c0442fe 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 96f10aff53..26acd175d5 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 cd35dbb239..be0c0442fe 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 3a2b33ebaa..0fb4b1c2fa 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 9490f36fa4..75146fc73a 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 96f10aff53..1d83fa2694 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 cd35dbb239..be0c0442fe 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 a42cb0d6ba..bc0fa5e4b6 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 a42cb0d6ba..bc0fa5e4b6 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 cd35dbb239..33fbc9053c 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 cd35dbb239..33fbc9053c 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 c3240e110c..7cd5c97dd9 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 9e4e7d678e..15398912a7 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 9b9c9d193b..7fee6691aa 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 dcc55cdb54..dd43c1038c 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 ecea5cfabc..a08799ab71 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 7b6a7f0ef8..b80999e7da 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 dff72330e0..50667e2a1b 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 dc2d69781b..9c2a6a7da8 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 c577f2b42b..267554376a 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 b4c65cc808..dcd99d387f 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 97d5c8423f..799739b255 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 6d4a4ed056..7ba1090eb4 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 7a42aae8de..78397ccb8f 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 329cf68655..45fcacf752 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 7ef8322c95..046e5b9f84 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 12a247edf7..ace161636e 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 7206672c8c..64de11e802 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 53c823100d..a1e35b70fc 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 da6862e0b2..5472ca4622 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 5fa41e041b..fb38908387 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 0d57af1837..5fbc95ec2c 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 ac20d734b4..0b2d94b11f 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 092c94f0ab..6705a44d11 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 2804c83d4f..35bc58726a 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 0d57af1837..5fbc95ec2c 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 ac20d734b4..ca3bde64cf 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 092c94f0ab..6705a44d11 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 2804c83d4f..0f1b10dbde 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 96f10aff53..1d83fa2694 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 cd35dbb239..2dba858a1f 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 0d57af1837..5fbc95ec2c 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 ac20d734b4..6f336bc155 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 2bfae34deb..417334e676 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 3e140388f8..329c6276a8 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 a09bfd7c91..f689adc8a0 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 6138d3091f..0e2f06f066 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 f17371c67a..8542ab3b80 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 fd8f185b3e..071e36f4d7 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 dc37f9c26b..1749c4c197 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 64bf92ee3a..4d0d3dc584 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 c0415edc30..958fc1e091 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 bc20ee554b..c32fd84820 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 74073c859a..a953b5b5a9 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 5430da0905..39ad5eb96e 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 3516b7a36d..4c26610614 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 9dc60bd3be..ce937b499c 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 d1fbb25b04..9caccaf793 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 d1fbb25b04..f8046188e3 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 424d85a5d4..d67664afba 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 424d85a5d4..d67664afba 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 497580b859..b95d960317 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 497580b859..b95d960317 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 dc12f80471..97afa28afb 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 dc12f80471..1e06944fa2 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