This test checks that text-indent parses properly the properties from CSS3 Text.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".

Test the initial value:
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Value '100px':
PASS e.style.textIndent is '100px'
PASS e.style.getPropertyValue('text-indent') is '100px'
PASS computedStyle.textIndent is '100px'
PASS computedStyle.getPropertyValue('text-indent') is '100px'


Value '20em':
PASS e.style.textIndent is '20em'
PASS e.style.getPropertyValue('text-indent') is '20em'
PASS computedStyle.textIndent is '200px'
PASS computedStyle.getPropertyValue('text-indent') is '200px'


Value '50%':
PASS e.style.textIndent is '50%'
PASS e.style.getPropertyValue('text-indent') is '50%'
PASS computedStyle.textIndent is '50%'
PASS computedStyle.getPropertyValue('text-indent') is '50%'


Value 'calc(10px + 20px)':
PASS e.style.textIndent is 'calc(30px)'
PASS e.style.getPropertyValue('text-indent') is 'calc(30px)'
PASS computedStyle.textIndent is '30px'
PASS computedStyle.getPropertyValue('text-indent') is '30px'


Value '100px each-line':
PASS e.style.textIndent is '100px each-line'
PASS e.style.getPropertyValue('text-indent') is '100px each-line'
PASS computedStyle.textIndent is '100px each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px each-line'


Value 'each-line 100px':
PASS e.style.textIndent is '100px each-line'
PASS e.style.getPropertyValue('text-indent') is '100px each-line'
PASS computedStyle.textIndent is '100px each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px each-line'


Value '20em each-line':
PASS e.style.textIndent is '20em each-line'
PASS e.style.getPropertyValue('text-indent') is '20em each-line'
PASS computedStyle.textIndent is '200px each-line'
PASS computedStyle.getPropertyValue('text-indent') is '200px each-line'


Value 'each-line 20em':
PASS e.style.textIndent is '20em each-line'
PASS e.style.getPropertyValue('text-indent') is '20em each-line'
PASS computedStyle.textIndent is '200px each-line'
PASS computedStyle.getPropertyValue('text-indent') is '200px each-line'


Value '30% each-line':
PASS e.style.textIndent is '30% each-line'
PASS e.style.getPropertyValue('text-indent') is '30% each-line'
PASS computedStyle.textIndent is '30% each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% each-line'


Value 'each-line 30%':
PASS e.style.textIndent is '30% each-line'
PASS e.style.getPropertyValue('text-indent') is '30% each-line'
PASS computedStyle.textIndent is '30% each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% each-line'


Value 'calc(10px + 20px) each-line':
PASS e.style.textIndent is 'calc(30px) each-line'
PASS e.style.getPropertyValue('text-indent') is 'calc(30px) each-line'
PASS computedStyle.textIndent is '30px each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30px each-line'


Value 'each-line calc(10px + 20px)':
PASS e.style.textIndent is 'calc(30px) each-line'
PASS e.style.getPropertyValue('text-indent') is 'calc(30px) each-line'
PASS computedStyle.textIndent is '30px each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30px each-line'


Value '100px hanging':
PASS e.style.textIndent is '100px hanging'
PASS e.style.getPropertyValue('text-indent') is '100px hanging'
PASS computedStyle.textIndent is '100px hanging'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging'


Value 'hanging 100px':
PASS e.style.textIndent is '100px hanging'
PASS e.style.getPropertyValue('text-indent') is '100px hanging'
PASS computedStyle.textIndent is '100px hanging'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging'


Value '20em hanging':
PASS e.style.textIndent is '20em hanging'
PASS e.style.getPropertyValue('text-indent') is '20em hanging'
PASS computedStyle.textIndent is '200px hanging'
PASS computedStyle.getPropertyValue('text-indent') is '200px hanging'


Value 'hanging 20em':
PASS e.style.textIndent is '20em hanging'
PASS e.style.getPropertyValue('text-indent') is '20em hanging'
PASS computedStyle.textIndent is '200px hanging'
PASS computedStyle.getPropertyValue('text-indent') is '200px hanging'


Value '30% hanging':
PASS e.style.textIndent is '30% hanging'
PASS e.style.getPropertyValue('text-indent') is '30% hanging'
PASS computedStyle.textIndent is '30% hanging'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging'


Value 'hanging 30%':
PASS e.style.textIndent is '30% hanging'
PASS e.style.getPropertyValue('text-indent') is '30% hanging'
PASS computedStyle.textIndent is '30% hanging'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging'


Value 'calc(10px + 20px) hanging':
PASS e.style.textIndent is 'calc(30px) hanging'
PASS e.style.getPropertyValue('text-indent') is 'calc(30px) hanging'
PASS computedStyle.textIndent is '30px hanging'
PASS computedStyle.getPropertyValue('text-indent') is '30px hanging'


Value 'hanging calc(10px + 20px)':
PASS e.style.textIndent is 'calc(30px) hanging'
PASS e.style.getPropertyValue('text-indent') is 'calc(30px) hanging'
PASS computedStyle.textIndent is '30px hanging'
PASS computedStyle.getPropertyValue('text-indent') is '30px hanging'


Value '100px each-line hanging':
PASS e.style.textIndent is '100px hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '100px hanging each-line'
PASS computedStyle.textIndent is '100px hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging each-line'


Value 'each-line 100px hanging':
PASS e.style.textIndent is '100px hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '100px hanging each-line'
PASS computedStyle.textIndent is '100px hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging each-line'


Value 'each-line hanging 100px':
PASS e.style.textIndent is '100px hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '100px hanging each-line'
PASS computedStyle.textIndent is '100px hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging each-line'


Value '100px hanging each-line':
PASS e.style.textIndent is '100px hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '100px hanging each-line'
PASS computedStyle.textIndent is '100px hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging each-line'


Value 'hanging 100px each-line':
PASS e.style.textIndent is '100px hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '100px hanging each-line'
PASS computedStyle.textIndent is '100px hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging each-line'


Value 'hanging each-line 100px':
PASS e.style.textIndent is '100px hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '100px hanging each-line'
PASS computedStyle.textIndent is '100px hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '100px hanging each-line'


Value '30% each-line hanging':
PASS e.style.textIndent is '30% hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '30% hanging each-line'
PASS computedStyle.textIndent is '30% hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging each-line'


Value 'each-line 30% hanging':
PASS e.style.textIndent is '30% hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '30% hanging each-line'
PASS computedStyle.textIndent is '30% hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging each-line'


Value 'each-line hanging 30%':
PASS e.style.textIndent is '30% hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '30% hanging each-line'
PASS computedStyle.textIndent is '30% hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging each-line'


Value '30% hanging each-line':
PASS e.style.textIndent is '30% hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '30% hanging each-line'
PASS computedStyle.textIndent is '30% hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging each-line'


Value 'hanging 30% each-line':
PASS e.style.textIndent is '30% hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '30% hanging each-line'
PASS computedStyle.textIndent is '30% hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging each-line'


Value 'hanging each-line 30%':
PASS e.style.textIndent is '30% hanging each-line'
PASS e.style.getPropertyValue('text-indent') is '30% hanging each-line'
PASS computedStyle.textIndent is '30% hanging each-line'
PASS computedStyle.getPropertyValue('text-indent') is '30% hanging each-line'




Invalid value test - '10m':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '100px 100px':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '100px line':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '100px hang':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '10m each-line':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - 'each-line 10m':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '10m hangning':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - 'hanging 10m':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '10m each-line hanging':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - 'each-line':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - 'hanging':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - 'each-line hanging':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '100px each-line 100px':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '100px hanging 100px':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - 'each-line 100px each-line':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - 'hanging 100px hanging':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '100px line hanging':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


Invalid value test - '100px each-line hang':
PASS e.style.textIndent is '0px'
PASS e.style.getPropertyValue('text-indent') is '0px'
PASS computedStyle.textIndent is '0px'
PASS computedStyle.getPropertyValue('text-indent') is '0px'


PASS successfullyParsed is true

TEST COMPLETE

