From 02437f7e87ac773a05f141bca0448a51d81c06ab Mon Sep 17 00:00:00 2001 From: Brandon Frohs Date: Sat, 31 Aug 2013 02:55:06 -0400 Subject: [PATCH] Convert tagName to uppercase ASCII per spec http://dom.spec.whatwg.org/#dom-element-tagname --- src/components/script/dom/element.rs | 3 ++- src/test/html/content/test_prototypes.html | 1 + src/test/html/content/test_prototypes.js | 5 ++++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index c4adf83022b..4b2642a85bf 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -19,6 +19,7 @@ use js::jsapi::{JSContext, JSObject}; use std::cell::Cell; use std::comm; use std::str::eq_slice; +use std::ascii::StrAsciiExt; use std::FromStr; pub struct Element { @@ -171,7 +172,7 @@ impl<'self> Element { impl Element { pub fn TagName(&self) -> DOMString { - str(self.tag_name.to_owned()) + str(self.tag_name.to_owned().to_ascii_upper()) } pub fn Id(&self) -> DOMString { diff --git a/src/test/html/content/test_prototypes.html b/src/test/html/content/test_prototypes.html index 95d33713711..5467caf52a8 100644 --- a/src/test/html/content/test_prototypes.html +++ b/src/test/html/content/test_prototypes.html @@ -3,6 +3,7 @@ + foo diff --git a/src/test/html/content/test_prototypes.js b/src/test/html/content/test_prototypes.js index f90170d856d..9eea42be4b6 100644 --- a/src/test/html/content/test_prototypes.js +++ b/src/test/html/content/test_prototypes.js @@ -4,4 +4,7 @@ is(window.document.documentElement instanceof HTMLElement, true); is(window.document.documentElement instanceof HTMLHtmlElement, true); is(window.document instanceof Document, true); is(window.document instanceof HTMLDocument, true); -finish(); \ No newline at end of file +is(window.document.documentElement.tagName, "HTML"); +is(window.document.getElementsByTagName('foo-á')[0] instanceof HTMLUnknownElement, true); +is(window.document.getElementsByTagName('foo-á')[0].tagName, "FOO-á"); +finish();