fix(build): deduplicate overlapping main integrations

This commit is contained in:
ldm0
2026-11-03 18:08:13 +08:00
parent cfaf718ae5
commit 6e085fd3eb
3 changed files with 10 additions and 48 deletions
-2
View File
@@ -1,6 +1,4 @@
mod attributes;
mod string_value;
pub use string_value::DomStringValue;
mod document;
mod element;
mod host;
@@ -314,7 +314,6 @@ fn send_synchronous_network_xhr(
})
.with_request_origin(prepared.request_origin.clone())
.with_credentials_mode(prepared.credentials_mode)
.with_use_cors_preflight(prepared.use_cors_preflight)
.with_network_partition_key(prepared.network_partition_key.clone())
.with_browser_request_metadata(BrowserRequestMetadata::Xhr)
.with_use_cors_preflight(prepared.use_cors_preflight);
+10 -45
View File
@@ -81,10 +81,6 @@ impl WebOrigin {
_ => false,
}
}
pub fn same_origin_url(&self, url: &Url) -> bool {
self.same_origin(&Self::from_url(url))
}
}
impl From<&Url> for WebOrigin {
@@ -213,25 +209,6 @@ mod tests {
Url::parse(input).unwrap()
}
#[test]
fn about_srcdoc_matches_fragments_but_not_queries_or_authorities() {
for input in ["about:srcdoc", "ABOUT:srcdoc", "about:srcdoc#section"] {
assert!(is_about_srcdoc(&url(input)), "{input}");
}
for input in [
"about:srcdoc?",
"about:srcdoc?query#section",
"about:SRCDOC",
"about:/srcdoc",
"about://host/srcdoc",
"about://user:password@host/srcdoc",
"about:blank#srcdoc",
"https://example.test/srcdoc",
] {
assert!(!is_about_srcdoc(&url(input)), "{input}");
}
}
#[test]
fn tuple_origin_serializes_default_and_explicit_ports() {
assert_eq!(
@@ -289,6 +266,16 @@ mod tests {
WebOrigin::from_ascii_serialization("null"),
WebOrigin::Opaque
);
assert!(
WebOrigin::from_ascii_serialization("https://example.test:8443")
.same_origin(&WebOrigin::from_url(&url("https://example.test:8443/path")))
);
for input in ["null", "not an origin", "data:text/plain,opaque"] {
let opaque = WebOrigin::from_ascii_serialization(input);
assert!(opaque.is_opaque());
assert!(!opaque.same_origin(&WebOrigin::Opaque));
}
}
#[test]
@@ -389,26 +376,4 @@ mod tests {
"blob:data:text/html,hello"
)));
}
#[test]
fn web_origin_compares_directly_with_urls() {
let origin = WebOrigin::from_url(&url("https://example.test/document"));
assert!(origin.same_origin_url(&url("https://example.test/resource")));
assert!(!origin.same_origin_url(&url("https://other.test/resource")));
assert!(!WebOrigin::Opaque.same_origin_url(&url("https://example.test/resource")));
}
#[test]
fn web_origin_rehydrates_tuple_serializations_and_keeps_null_opaque() {
assert!(
WebOrigin::from_ascii_serialization("https://example.test:8443")
.same_origin(&WebOrigin::from_url(&url("https://example.test:8443/path")))
);
for input in ["null", "not an origin", "data:text/plain,opaque"] {
let opaque = WebOrigin::from_ascii_serialization(input);
assert!(opaque.is_opaque());
assert!(!opaque.same_origin(&WebOrigin::Opaque));
}
}
}