Jelajahi Sumber

Merge pull request #819 from servo/wpt

Update urltestdata.json WPT test cases
Valentin Gosu 3 tahun lalu
induk
melakukan
edeaea7f1e
2 mengubah file dengan 677 tambahan dan 179 penghapusan
  1. 9 19
      url/tests/data.rs
  2. 668 160
      url/tests/urltestdata.json

+ 9 - 19
url/tests/data.rs

@@ -15,29 +15,25 @@ use url::{quirks, Url};
 
 #[test]
 fn urltestdata() {
-    let idna_skip_inputs = [
-        "http://www.foo。bar.com",
-        "http://Go.com",
-        "http://你好你好",
-        "https://faß.ExAmPlE/",
-        "http://0Xc0.0250.01",
-        "ftp://%e2%98%83",
-        "https://%e2%98%83",
-        "file://a\u{ad}b/p",
-        "file://a%C2%ADb/p",
-        "http://GOO\u{200b}\u{2060}\u{feff}goo.com",
-    ];
-
     // Copied from https://github.com/web-platform-tests/wpt/blob/master/url/
     let mut json = Value::from_str(include_str!("urltestdata.json"))
         .expect("JSON parse error in urltestdata.json");
 
     let mut passed = true;
+    let mut skip_next = false;
     for entry in json.as_array_mut().unwrap() {
         if entry.is_string() {
+            if entry.as_str().unwrap() == "skip next" {
+                skip_next = true;
+            }
             continue; // ignore comments
         }
 
+        if skip_next {
+            skip_next = false;
+            continue;
+        }
+
         let maybe_base = entry
             .take_key("base")
             .expect("missing base key")
@@ -45,12 +41,6 @@ fn urltestdata() {
         let input = entry.take_string("input");
         let failure = entry.take_key("failure").is_some();
 
-        {
-            if idna_skip_inputs.contains(&input.as_str()) {
-                continue;
-            }
-        }
-
         let res = if let Some(base) = maybe_base {
             let base = match Url::parse(&base) {
                 Ok(base) => base,

File diff ditekan karena terlalu besar
+ 668 - 160
url/tests/urltestdata.json


Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini