Support lang pseudo class

This commit is contained in:
Keith Yeung 2017-02-07 20:24:21 -08:00
parent 050d9d9097
commit 7456bcf02b
63 changed files with 250 additions and 238 deletions

View file

@ -149,3 +149,6 @@ skip: true
skip: true
[xhtml1print]
skip: true
[selectors-3_dev]
skip: false

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-005.htm]
type: testharness
[A :lang value will match a lang attribute value when the latter contains additional subtags.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-009.htm]
type: testharness
[A :lang value with a multiple subtags will match a lang attribute value with multiple subtags as long as the first part is the same.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-024.htm]
type: testharness
[A lang|= value will match a lang attribute value regardless of case differences.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-035.htm]
type: testharness
[A lang|= value will match a lang attribute value regardless of case differences in the script tag.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-044.htm]
type: testharness
[A lang= value will match a lang attribute value regardless of case differences.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-055.htm]
type: testharness
[A lang= value will match a lang attribute value regardless of case differences in the script tag.]
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-001.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-002.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-003.htm]
type: reftest
expected: FAIL

View file

@ -1,3 +1,3 @@
[case-sensitive-004.htm]
[grid-first-line-001.htm]
type: reftest
expected: FAIL

View file

@ -1,3 +1,3 @@
[lang-selector-003.htm]
[grid-first-line-002.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-line-003.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-001.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-002.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-003.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-001.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-002.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-003.htm]
type: reftest
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-005.xht]
type: testharness
[A :lang value will match a lang attribute value when the latter contains additional subtags.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-009.xht]
type: testharness
[A :lang value with a multiple subtags will match a lang attribute value with multiple subtags as long as the first part is the same.]
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-003.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-line-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-line-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-line-003.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-003.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-003.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-005.xht]
type: testharness
[A :lang value will match a lang attribute value when the latter contains additional subtags.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[css3-selectors-lang-009.xht]
type: testharness
[A :lang value with a multiple subtags will match a lang attribute value with multiple subtags as long as the first part is the same.]
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-letter-003.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-line-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-line-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-first-line-003.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-letter-003.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-001.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-002.xht]
type: reftest
expected: FAIL

View file

@ -0,0 +1,3 @@
[grid-inline-first-line-003.xht]
type: reftest
expected: FAIL

View file

@ -1,23 +1,11 @@
[Element-matches.html]
type: testharness
[In-document Element.matches: :lang pseudo-class selector, matching inherited language (with no refNodes): #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with exact value (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with partial value (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.matches: :lang pseudo-class selector, matching specified language with exact value (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.matches: :lang pseudo-class selector, matching specified language with partial value (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment Element.matches: :lang pseudo-class selector, matching specified language with exact value (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment Element.matches: :lang pseudo-class selector, matching specified language with partial value (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL
@ -30,12 +18,6 @@
[In-document Element.matches: Universal selector, matching all descendants of the specified reference element (with refNode Element): *]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching inherited language (1) (with no refNodes): #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with exact value (1) (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with partial value (1) (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL

View file

@ -1,29 +1,11 @@
[ParentNode-querySelector-All-xht.xht]
type: testharness
[Document.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Document.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
@ -48,30 +30,12 @@
[Document.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Detached Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
@ -96,30 +60,12 @@
[Detached Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Fragment.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
@ -144,30 +90,12 @@
[Fragment.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[In-document Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL

View file

@ -1,29 +1,11 @@
[ParentNode-querySelector-All.html]
type: testharness
[Document.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Document.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
@ -48,30 +30,12 @@
[Document.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Detached Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
@ -96,30 +60,12 @@
[Detached Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Fragment.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
@ -144,30 +90,12 @@
[Fragment.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[In-document Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL

View file

@ -1,5 +0,0 @@
[lang-xmllang-01.html]
type: reftest
reftype: ==
refurl: /html/dom/elements/global-attributes/lang-xmllang-01-ref.html
expected: FAIL

View file

@ -1,5 +0,0 @@
[lang-xyzzy.html]
type: reftest
reftype: ==
refurl: /html/dom/elements/global-attributes/lang-xyzzy-ref.html
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-001.html]
type: testharness
[The browser will recognize a language declared in a lang attribute on the html tag.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-002.html]
type: testharness
[The browser will NOT recognize a language declared in an xml:lang attribute on the html tag.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-005.html]
type: testharness
[If there is a conflict between the language declarations in the HTTP header and the html element using lang, the browser will recognize the language declared in the html element.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-007.html]
type: testharness
[If there is a conflict between the language declared using lang in the html element and that in the meta element, the UA will recognize the language declared in the html element.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-008.html]
type: testharness
[If an element contains a lang attribute with an empty value, the value of a lang attribute higher up the document tree will no longer be applied to the content of that element.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-009.html]
type: testharness
[If the HTTP header contains a language declaration but the html element uses an empty lang value, the UA will not recognize the language declared in the HTTP header.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-010.html]
type: testharness
[If the meta Content-Language element contains a language declaration but the html element uses an empty lang value, the UA will not recognize the language declared in the meta Content-Language element.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[the-lang-attribute-012.html]
type: testharness
[The UA will not recognize a language declaration in the Content-Language meta element when more than one language is declared.]
expected: FAIL