diff options
9 files changed, 5 insertions, 85 deletions
diff --git a/components/script/dom/htmlscriptelement.rs b/components/script/dom/htmlscriptelement.rs index 129ca0ff0a0..48a85f9b022 100644 --- a/components/script/dom/htmlscriptelement.rs +++ b/components/script/dom/htmlscriptelement.rs @@ -28,6 +28,7 @@ use encoding::types::{Encoding, DecodeReplace}; use servo_net::resource_task::load_whole_resource; use servo_util::str::{DOMString, HTML_SPACE_CHARACTERS, StaticStringVec}; use std::cell::Cell; +use string_cache::Atom; use url::UrlParser; #[dom_struct] @@ -302,10 +303,9 @@ impl<'a> VirtualMethods for JSRef<'a, HTMLScriptElement> { } impl<'a> HTMLScriptElementMethods for JSRef<'a, HTMLScriptElement> { - fn Src(self) -> DOMString { - let element: JSRef<Element> = ElementCast::from_ref(self); - element.get_url_attribute(&atom!("src")) - } + make_url_getter!(Src) + + make_setter!(SetSrc, "src") // http://www.whatwg.org/html/#dom-script-text fn Text(self) -> DOMString { diff --git a/components/script/dom/webidls/HTMLScriptElement.webidl b/components/script/dom/webidls/HTMLScriptElement.webidl index 260850fa78c..447c01d2bfc 100644 --- a/components/script/dom/webidls/HTMLScriptElement.webidl +++ b/components/script/dom/webidls/HTMLScriptElement.webidl @@ -5,8 +5,7 @@ // http://www.whatwg.org/html/#htmlscriptelement interface HTMLScriptElement : HTMLElement { - // attribute DOMString src; - readonly attribute DOMString src; + attribute DOMString src; // attribute DOMString type; // attribute DOMString charset; // attribute boolean async; diff --git a/tests/wpt/metadata/html/dom/interfaces.html.ini b/tests/wpt/metadata/html/dom/interfaces.html.ini index 2d8b680bd9a..1f0b7ac5625 100644 --- a/tests/wpt/metadata/html/dom/interfaces.html.ini +++ b/tests/wpt/metadata/html/dom/interfaces.html.ini @@ -6090,9 +6090,6 @@ [HTMLScriptElement interface object length] expected: FAIL - [HTMLScriptElement interface: attribute src] - expected: FAIL - [HTMLScriptElement interface: attribute type] expected: FAIL diff --git a/tests/wpt/metadata/html/dom/reflection-misc.html.ini b/tests/wpt/metadata/html/dom/reflection-misc.html.ini index 066d6f2234a..3fbeece0db4 100644 --- a/tests/wpt/metadata/html/dom/reflection-misc.html.ini +++ b/tests/wpt/metadata/html/dom/reflection-misc.html.ini @@ -1386,105 +1386,54 @@ [script.src: setAttribute() to object "test-valueOf" followed by IDL get] expected: FAIL - [script.src: IDL set to "" followed by getAttribute()] - expected: FAIL - [script.src: IDL set to "" followed by IDL get] expected: FAIL - [script.src: IDL set to " foo " followed by getAttribute()] - expected: FAIL - [script.src: IDL set to " foo " followed by IDL get] expected: FAIL - [script.src: IDL set to "http://site.example/" followed by getAttribute()] - expected: FAIL - [script.src: IDL set to "http://site.example/" followed by IDL get] expected: FAIL - [script.src: IDL set to "//site.example/path???@#l" followed by getAttribute()] - expected: FAIL - [script.src: IDL set to "//site.example/path???@#l" followed by IDL get] expected: FAIL - [script.src: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f " followed by getAttribute()] - expected: FAIL - [script.src: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f " followed by IDL get] expected: FAIL - [script.src: IDL set to undefined followed by getAttribute()] - expected: FAIL - [script.src: IDL set to undefined followed by IDL get] expected: FAIL - [script.src: IDL set to 7 followed by getAttribute()] - expected: FAIL - [script.src: IDL set to 7 followed by IDL get] expected: FAIL - [script.src: IDL set to 1.5 followed by getAttribute()] - expected: FAIL - [script.src: IDL set to 1.5 followed by IDL get] expected: FAIL - [script.src: IDL set to true followed by getAttribute()] - expected: FAIL - [script.src: IDL set to true followed by IDL get] expected: FAIL - [script.src: IDL set to false followed by getAttribute()] - expected: FAIL - [script.src: IDL set to false followed by IDL get] expected: FAIL - [script.src: IDL set to object "[object Object\]" followed by getAttribute()] - expected: FAIL - [script.src: IDL set to object "[object Object\]" followed by IDL get] expected: FAIL - [script.src: IDL set to NaN followed by getAttribute()] - expected: FAIL - [script.src: IDL set to NaN followed by IDL get] expected: FAIL - [script.src: IDL set to Infinity followed by getAttribute()] - expected: FAIL - [script.src: IDL set to Infinity followed by IDL get] expected: FAIL - [script.src: IDL set to -Infinity followed by getAttribute()] - expected: FAIL - [script.src: IDL set to -Infinity followed by IDL get] expected: FAIL - [script.src: IDL set to "\\0" followed by getAttribute()] - expected: FAIL - [script.src: IDL set to "\\0" followed by IDL get] expected: FAIL - [script.src: IDL set to null followed by getAttribute()] - expected: FAIL - [script.src: IDL set to null followed by IDL get] expected: FAIL - [script.src: IDL set to object "test-toString" followed by getAttribute()] - expected: FAIL - [script.src: IDL set to object "test-toString" followed by IDL get] expected: FAIL diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/095.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/095.html.ini deleted file mode 100644 index e932e6afebf..00000000000 --- a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/095.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[095.html] - type: testharness - [ scheduler: slow-loading script added from defer blocking load event] - expected: FAIL - diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/105.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/105.html.ini deleted file mode 100644 index 253a757e9a1..00000000000 --- a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/105.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[105.html] - type: testharness - [ scheduler: adding async attribute at runtime] - expected: FAIL - diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/123.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/123.html.ini deleted file mode 100644 index cb08c989a08..00000000000 --- a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/123.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[123.html] - type: testharness - [scheduler: altering the type attribute and adding/removing external script with async=false ] - expected: FAIL - diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/126.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/126.html.ini deleted file mode 100644 index f4bb635c593..00000000000 --- a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/126.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[126.html] - type: testharness - [scheduler: altering the type attribute and changing script data external script async=false ] - expected: FAIL - diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/146.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/146.html.ini deleted file mode 100644 index c5cde10199c..00000000000 --- a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/146.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[146.html] - type: testharness - [scheduler: SVG script adding src attribute ] - expected: FAIL - |