From e0eb111e3e2f76d16682559780baa3d756ed0df7 Mon Sep 17 00:00:00 2001 From: Luca Casonato Date: Mon, 25 Jan 2021 16:02:03 +0100 Subject: Revert "tests: enable wpt for url (#9046)" (#9264) This reverts commit 66e99d349b31f5cd30b868d80ebdab6ba749fd96. --- cli/tests/integration_tests.rs | 97 +------ cli/tests/unit/net_test.ts | 4 +- cli/tests/wpt.jsonc | 406 ---------------------------- cli/tests/wpt_testharnessconsolereporter.js | 4 +- 4 files changed, 7 insertions(+), 504 deletions(-) (limited to 'cli/tests') diff --git a/cli/tests/integration_tests.rs b/cli/tests/integration_tests.rs index bd197daff..40a23bcfa 100644 --- a/cli/tests/integration_tests.rs +++ b/cli/tests/integration_tests.rs @@ -5,7 +5,6 @@ use deno_core::serde_json; use deno_core::url; use deno_runtime::deno_fetch::reqwest; use deno_runtime::deno_websocket::tokio_tungstenite; -use std::io::BufReader; use std::io::{BufRead, Write}; use std::path::Path; use std::path::PathBuf; @@ -5250,32 +5249,6 @@ fn jsonc_to_serde(j: jsonc_parser::JsonValue) -> serde_json::Value { } } -struct WPTServer(std::process::Child); - -impl Drop for WPTServer { - fn drop(&mut self) { - match self.0.try_wait() { - Ok(None) => { - #[cfg(target_os = "linux")] - { - println!("libc kill"); - unsafe { - libc::kill(self.0.id() as i32, libc::SIGTERM); - } - } - #[cfg(not(target_os = "linux"))] - { - println!("std kill"); - self.0.kill().expect("killing 'wpt serve' failed"); - } - let _ = self.0.wait(); - } - Ok(Some(status)) => panic!("'wpt serve' exited unexpectedly {}", status), - Err(e) => panic!("'wpt serve' error: {}", e), - } - } -} - #[test] fn web_platform_tests() { use deno_core::serde::Deserialize; @@ -5297,61 +5270,6 @@ fn web_platform_tests() { let config: std::collections::HashMap> = deno_core::serde_json::from_value(jsonc_to_serde(jsonc)).unwrap(); - // Observation: `python3 wpt serve` hangs with the python3 from homebrew - // but works okay with /usr/bin/python, which is python 2.7.10. Observed - // with homebrew python 3.8.5, 3.8.7 and 3.9.1. - let python = match true { - _ if cfg!(target_os = "windows") => "python.exe", - _ if cfg!(target_os = "macos") => "python", - _ => "python3", - }; - - eprintln!("If the wpt server fails or gets stuck, please set up your /etc/hosts file like specified in //docs/contributing/building_from_source.md."); - - let mut proc = Command::new(python) - .current_dir(util::wpt_path()) - .arg("wpt.py") - .arg("serve") - .stderr(std::process::Stdio::piped()) - .spawn() - .unwrap(); - - let stderr = proc.stderr.as_mut().unwrap(); - let mut stderr = BufReader::new(stderr).lines(); - let mut ready_8000 = false; - let mut ready_8443 = false; - let mut ready_8444 = false; - let mut ready_9000 = false; - while let Ok(line) = stderr.next().unwrap() { - if !line.starts_with("DEBUG:") { - eprintln!("{}", line); - } - if cfg!(target_os = "windows") && line.contains("Using ports") { - break; - } - if line.contains("web-platform.test:8000") { - ready_8000 = true; - } - if line.contains("web-platform.test:8443") { - ready_8443 = true; - } - if line.contains("web-platform.test:8444") { - ready_8444 = true; - } - if line.contains("web-platform.test:9000") { - ready_9000 = true; - } - // WPT + python2 doesn't support HTTP/2.0. - if line.contains("Cannot start HTTP/2.0 server") { - ready_9000 = true; - } - if ready_8000 && ready_8443 && ready_8444 && ready_9000 { - break; - } - } - - let _wpt_server = WPTServer(proc); - for (suite_name, includes) in config.into_iter() { let suite_path = util::wpt_path().join(suite_name); let dir = WalkDir::new(&suite_path) @@ -5434,15 +5352,14 @@ fn web_platform_tests() { }) .collect(); - let mut variants: Vec = test_file_text + let mut variants: Vec<&str> = test_file_text .split('\n') .into_iter() .filter_map(|t| t.strip_prefix("// META: variant=")) - .map(|t| format!("?{}", t)) .collect(); if variants.is_empty() { - variants.push("".to_string()); + variants.push(""); } for variant in variants { @@ -5465,19 +5382,11 @@ fn web_platform_tests() { let bundle = concat_bundle(files, file.path(), "".to_string()); file.write_all(bundle.as_bytes()).unwrap(); - let self_path = test_file_path.strip_prefix(util::wpt_path()).unwrap(); - let child = util::deno_cmd() .current_dir(test_file_path.parent().unwrap()) .arg("run") .arg("--location") - .arg(&format!( - "http://web-platform.test:8000/{}{}", - self_path.to_str().unwrap(), - variant - )) - .arg("--cert") - .arg(util::wpt_path().join("tools/certs/cacert.pem")) + .arg(&format!("http://web-platform-tests/?{}", variant)) .arg("-A") .arg(file.path()) .arg(deno_core::serde_json::to_string(&expect_fail).unwrap()) diff --git a/cli/tests/unit/net_test.ts b/cli/tests/unit/net_test.ts index f69745ea5..99af959cc 100644 --- a/cli/tests/unit/net_test.ts +++ b/cli/tests/unit/net_test.ts @@ -424,7 +424,7 @@ unitTest( unitTest( { perms: { net: true } }, async function netTcpListenCloseWhileIterating(): Promise { - const listener = Deno.listen({ port: 8001 }); + const listener = Deno.listen({ port: 8000 }); const nextWhileClosing = listener[Symbol.asyncIterator]().next(); listener.close(); assertEquals(await nextWhileClosing, { value: undefined, done: true }); @@ -437,7 +437,7 @@ unitTest( unitTest( { perms: { net: true } }, async function netUdpListenCloseWhileIterating(): Promise { - const socket = Deno.listenDatagram({ port: 8001, transport: "udp" }); + const socket = Deno.listenDatagram({ port: 8000, transport: "udp" }); const nextWhileClosing = socket[Symbol.asyncIterator]().next(); socket.close(); assertEquals(await nextWhileClosing, { value: undefined, done: true }); diff --git a/cli/tests/wpt.jsonc b/cli/tests/wpt.jsonc index d0ea8cea5..2f9573875 100644 --- a/cli/tests/wpt.jsonc +++ b/cli/tests/wpt.jsonc @@ -241,411 +241,5 @@ "does not inherit from Error: class-side" ] } - ], - "url": [ - "historical", - { - "name": "url-constructor", - "expectFail": [ - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <:#> against ", - "Parsing: <#> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: < File:c|////foo\\bar.html> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <\u0000\u001b\u0004\u0012 http://example.com/\u001f \r > against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <#> against ", - "Parsing: <#> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <../i> against ", - "Parsing: <../i> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <\\/localhost//pig> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <\\\\\\.\\Y:> against ", - "Parsing: <\\\\\\.\\y:> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <#x> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: <..//path> against ", - "Parsing: against ", - "Parsing: <> against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against ", - "Parsing: against " - ] - }, - { - "name": "url-origin", - "expectFail": [ - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: <\u0000\u001b\u0004\u0012 http://example.com/\u001f \r > against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: <../i> against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: <#i> against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: <#x> against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against ", - "Origin parsing: against " - ] - }, - { - "name": "url-searchparams", - "expectFail": [ - "URL.searchParams updating, clearing", - "URL.searchParams and URL.search setters, update propagation" - ] - }, - { - "name": "url-setters-stripping", - "expectFail": [ - "Setting protocol with leading U+0000 (https:)", - "Setting protocol with U+0000 before inserted colon (https:)", - "Setting host with leading U+0000 (https:)", - "Setting host with middle U+0000 (https:)", - "Setting host with trailing U+0000 (https:)", - "Setting port with middle U+0000 (https:)", - "Setting port with trailing U+0000 (https:)", - "Setting protocol with leading U+0009 (https:)", - "Setting protocol with U+0009 before inserted colon (https:)", - "Setting host with leading U+0009 (https:)", - "Setting hostname with leading U+0009 (https:)", - "Setting host with middle U+0009 (https:)", - "Setting hostname with middle U+0009 (https:)", - "Setting host with trailing U+0009 (https:)", - "Setting hostname with trailing U+0009 (https:)", - "Setting port with leading U+0009 (https:)", - "Setting port with middle U+0009 (https:)", - "Setting port with trailing U+0009 (https:)", - "Setting pathname with leading U+0009 (https:)", - "Setting pathname with middle U+0009 (https:)", - "Setting pathname with trailing U+0009 (https:)", - "Setting search with leading U+0009 (https:)", - "Setting search with middle U+0009 (https:)", - "Setting search with trailing U+0009 (https:)", - "Setting hash with leading U+0009 (https:)", - "Setting hash with middle U+0009 (https:)", - "Setting hash with trailing U+0009 (https:)", - "Setting protocol with leading U+000A (https:)", - "Setting protocol with U+000A before inserted colon (https:)", - "Setting host with leading U+000A (https:)", - "Setting hostname with leading U+000A (https:)", - "Setting host with middle U+000A (https:)", - "Setting hostname with middle U+000A (https:)", - "Setting host with trailing U+000A (https:)", - "Setting hostname with trailing U+000A (https:)", - "Setting port with leading U+000A (https:)", - "Setting port with middle U+000A (https:)", - "Setting port with trailing U+000A (https:)", - "Setting pathname with leading U+000A (https:)", - "Setting pathname with middle U+000A (https:)", - "Setting pathname with trailing U+000A (https:)", - "Setting search with leading U+000A (https:)", - "Setting search with middle U+000A (https:)", - "Setting search with trailing U+000A (https:)", - "Setting hash with leading U+000A (https:)", - "Setting hash with middle U+000A (https:)", - "Setting hash with trailing U+000A (https:)", - "Setting protocol with leading U+000D (https:)", - "Setting protocol with U+000D before inserted colon (https:)", - "Setting host with leading U+000D (https:)", - "Setting hostname with leading U+000D (https:)", - "Setting host with middle U+000D (https:)", - "Setting hostname with middle U+000D (https:)", - "Setting host with trailing U+000D (https:)", - "Setting hostname with trailing U+000D (https:)", - "Setting port with leading U+000D (https:)", - "Setting port with middle U+000D (https:)", - "Setting port with trailing U+000D (https:)", - "Setting pathname with leading U+000D (https:)", - "Setting pathname with middle U+000D (https:)", - "Setting pathname with trailing U+000D (https:)", - "Setting search with leading U+000D (https:)", - "Setting search with middle U+000D (https:)", - "Setting search with trailing U+000D (https:)", - "Setting hash with leading U+000D (https:)", - "Setting hash with middle U+000D (https:)", - "Setting hash with trailing U+000D (https:)", - "Setting protocol with leading U+001F (https:)", - "Setting protocol with U+001F before inserted colon (https:)", - "Setting host with leading U+001F (https:)", - "Setting host with middle U+001F (https:)", - "Setting host with trailing U+001F (https:)", - "Setting port with middle U+001F (https:)", - "Setting port with trailing U+001F (https:)", - "Setting protocol with leading U+0000 (wpt++:)", - "Setting protocol with U+0000 before inserted colon (wpt++:)", - "Setting host with leading U+0000 (wpt++:)", - "Setting host with middle U+0000 (wpt++:)", - "Setting host with trailing U+0000 (wpt++:)", - "Setting port with middle U+0000 (wpt++:)", - "Setting port with trailing U+0000 (wpt++:)", - "Setting pathname with leading U+0000 (wpt++:)", - "Setting pathname with middle U+0000 (wpt++:)", - "Setting pathname with trailing U+0000 (wpt++:)", - "Setting protocol with leading U+0009 (wpt++:)", - "Setting protocol with U+0009 before inserted colon (wpt++:)", - "Setting host with leading U+0009 (wpt++:)", - "Setting hostname with leading U+0009 (wpt++:)", - "Setting host with middle U+0009 (wpt++:)", - "Setting hostname with middle U+0009 (wpt++:)", - "Setting host with trailing U+0009 (wpt++:)", - "Setting hostname with trailing U+0009 (wpt++:)", - "Setting port with leading U+0009 (wpt++:)", - "Setting port with middle U+0009 (wpt++:)", - "Setting port with trailing U+0009 (wpt++:)", - "Setting pathname with leading U+0009 (wpt++:)", - "Setting pathname with middle U+0009 (wpt++:)", - "Setting pathname with trailing U+0009 (wpt++:)", - "Setting search with leading U+0009 (wpt++:)", - "Setting search with middle U+0009 (wpt++:)", - "Setting search with trailing U+0009 (wpt++:)", - "Setting hash with leading U+0009 (wpt++:)", - "Setting hash with middle U+0009 (wpt++:)", - "Setting hash with trailing U+0009 (wpt++:)", - "Setting protocol with leading U+000A (wpt++:)", - "Setting protocol with U+000A before inserted colon (wpt++:)", - "Setting host with leading U+000A (wpt++:)", - "Setting hostname with leading U+000A (wpt++:)", - "Setting host with middle U+000A (wpt++:)", - "Setting hostname with middle U+000A (wpt++:)", - "Setting host with trailing U+000A (wpt++:)", - "Setting hostname with trailing U+000A (wpt++:)", - "Setting port with leading U+000A (wpt++:)", - "Setting port with middle U+000A (wpt++:)", - "Setting port with trailing U+000A (wpt++:)", - "Setting pathname with leading U+000A (wpt++:)", - "Setting pathname with middle U+000A (wpt++:)", - "Setting pathname with trailing U+000A (wpt++:)", - "Setting search with leading U+000A (wpt++:)", - "Setting search with middle U+000A (wpt++:)", - "Setting search with trailing U+000A (wpt++:)", - "Setting hash with leading U+000A (wpt++:)", - "Setting hash with middle U+000A (wpt++:)", - "Setting hash with trailing U+000A (wpt++:)", - "Setting protocol with leading U+000D (wpt++:)", - "Setting protocol with U+000D before inserted colon (wpt++:)", - "Setting host with leading U+000D (wpt++:)", - "Setting hostname with leading U+000D (wpt++:)", - "Setting host with middle U+000D (wpt++:)", - "Setting hostname with middle U+000D (wpt++:)", - "Setting host with trailing U+000D (wpt++:)", - "Setting hostname with trailing U+000D (wpt++:)", - "Setting port with leading U+000D (wpt++:)", - "Setting port with middle U+000D (wpt++:)", - "Setting port with trailing U+000D (wpt++:)", - "Setting pathname with leading U+000D (wpt++:)", - "Setting pathname with middle U+000D (wpt++:)", - "Setting pathname with trailing U+000D (wpt++:)", - "Setting search with leading U+000D (wpt++:)", - "Setting search with middle U+000D (wpt++:)", - "Setting search with trailing U+000D (wpt++:)", - "Setting hash with leading U+000D (wpt++:)", - "Setting hash with middle U+000D (wpt++:)", - "Setting hash with trailing U+000D (wpt++:)", - "Setting protocol with leading U+001F (wpt++:)", - "Setting protocol with U+001F before inserted colon (wpt++:)", - "Setting host with leading U+001F (wpt++:)", - "Setting host with middle U+001F (wpt++:)", - "Setting host with trailing U+001F (wpt++:)", - "Setting port with middle U+001F (wpt++:)", - "Setting port with trailing U+001F (wpt++:)", - "Setting pathname with leading U+001F (wpt++:)", - "Setting pathname with middle U+001F (wpt++:)", - "Setting pathname with trailing U+001F (wpt++:)" - ] - }, - "url-tojson", - { - "name": "urlencoded-parser", - "expectFail": [ - "URLSearchParams constructed with: %EF%BB%BFtest=%EF%BB%BF", - "request.formData() with input: test=", - "response.formData() with input: test=", - "request.formData() with input: %FE%FF", - "response.formData() with input: %FE%FF", - "request.formData() with input: %FF%FE", - "response.formData() with input: %FF%FE", - "request.formData() with input: %C2", - "response.formData() with input: %C2", - "request.formData() with input: %C2x", - "response.formData() with input: %C2x", - "request.formData() with input: _charset_=windows-1252&test=%C2x", - "response.formData() with input: _charset_=windows-1252&test=%C2x", - "request.formData() with input: %=a", - "response.formData() with input: %=a", - "request.formData() with input: %a=a", - "response.formData() with input: %a=a", - "request.formData() with input: %a_=a", - "response.formData() with input: %a_=a", - "request.formData() with input: id=0&value=%", - "response.formData() with input: id=0&value=%", - "request.formData() with input: b=%2sf%2a", - "response.formData() with input: b=%2sf%2a", - "request.formData() with input: b=%2%2af%2a", - "response.formData() with input: b=%2%2af%2a", - "request.formData() with input: b=%%2a", - "response.formData() with input: b=%%2a" - ] - }, - "urlsearchparams-append", - { - "name": "urlsearchparams-constructor", - "expectFail": [ - "URLSearchParams constructor, empty string as argument", - "Construct with 2 unpaired surrogates (no trailing)", - "Construct with 3 unpaired surrogates (no leading)", - "Construct with object with NULL, non-ASCII, and surrogate keys" - ] - }, - "urlsearchparams-delete", - { - "name": "urlsearchparams-foreach", - "expectFail": [ - "For-of Check", - "delete next param during iteration", - "delete current param during iteration", - "delete every param seen during iteration" - ] - }, - "urlsearchparams-get", - "urlsearchparams-getall", - "urlsearchparams-has", - "urlsearchparams-set", - "urlsearchparams-sort", - "urlsearchparams-stringifier" ] } diff --git a/cli/tests/wpt_testharnessconsolereporter.js b/cli/tests/wpt_testharnessconsolereporter.js index 24979ce52..2e0e06c02 100644 --- a/cli/tests/wpt_testharnessconsolereporter.js +++ b/cli/tests/wpt_testharnessconsolereporter.js @@ -111,13 +111,13 @@ window.add_completion_callback((tests, harnessStatus) => { console.log(`\nfailures:\n`); } for (const result of failed) { - console.log(` ${JSON.stringify(result.name)}`); + console.log(` ${result.name}`); } if (expectedFailedButPassedCount > 0) { console.log(`\nexpected failures that passed:\n`); } for (const result of expectedFailedButPassed) { - console.log(` ${JSON.stringify(result.name)}`); + console.log(` ${result.name}`); } console.log( `\ntest result: ${ -- cgit v1.2.3