This test checks the behavior of table styles when changing certain table attributes.

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


PASS getComputedStyle(table, '').borderLeftWidth is '0px'
PASS getComputedStyle(table, '').borderRightWidth is '0px'
PASS getComputedStyle(table, '').borderTopWidth is '0px'
PASS getComputedStyle(table, '').borderBottomWidth is '0px'
PASS getComputedStyle(table, '').borderLeftStyle is 'none'
PASS getComputedStyle(table, '').borderRightStyle is 'none'
PASS getComputedStyle(table, '').borderTopStyle is 'none'
PASS getComputedStyle(table, '').borderBottomStyle is 'none'
PASS getComputedStyle(table, '').borderLeftColor is yellow
PASS getComputedStyle(table, '').borderRightColor is yellow
PASS getComputedStyle(table, '').borderTopColor is yellow
PASS getComputedStyle(table, '').borderBottomColor is yellow
PASS getComputedStyle(cell, '').borderLeftWidth is '0px'
PASS getComputedStyle(cell, '').borderRightWidth is '0px'
PASS getComputedStyle(cell, '').borderTopWidth is '0px'
PASS getComputedStyle(cell, '').borderBottomWidth is '0px'
PASS getComputedStyle(cell, '').borderLeftStyle is 'none'
PASS getComputedStyle(cell, '').borderRightStyle is 'none'
PASS getComputedStyle(cell, '').borderTopStyle is 'none'
PASS getComputedStyle(cell, '').borderBottomStyle is 'none'
PASS getComputedStyle(cell, '').borderLeftColor is red
PASS getComputedStyle(cell, '').borderRightColor is red
PASS getComputedStyle(cell, '').borderTopColor is red
PASS getComputedStyle(cell, '').borderBottomColor is red
PASS getComputedStyle(table, '').borderLeftWidth is '1px'
PASS getComputedStyle(table, '').borderRightWidth is '1px'
PASS getComputedStyle(table, '').borderTopWidth is '1px'
PASS getComputedStyle(table, '').borderBottomWidth is '1px'
PASS getComputedStyle(table, '').borderLeftStyle is 'outset'
PASS getComputedStyle(table, '').borderRightStyle is 'outset'
PASS getComputedStyle(table, '').borderTopStyle is 'outset'
PASS getComputedStyle(table, '').borderBottomStyle is 'outset'
PASS getComputedStyle(table, '').borderLeftColor is yellow
PASS getComputedStyle(table, '').borderRightColor is yellow
PASS getComputedStyle(table, '').borderTopColor is yellow
PASS getComputedStyle(table, '').borderBottomColor is yellow
PASS getComputedStyle(cell, '').borderLeftWidth is '1px'
PASS getComputedStyle(cell, '').borderRightWidth is '1px'
PASS getComputedStyle(cell, '').borderTopWidth is '1px'
PASS getComputedStyle(cell, '').borderBottomWidth is '1px'
PASS getComputedStyle(cell, '').borderLeftStyle is 'inset'
PASS getComputedStyle(cell, '').borderRightStyle is 'inset'
PASS getComputedStyle(cell, '').borderTopStyle is 'inset'
PASS getComputedStyle(cell, '').borderBottomStyle is 'inset'
PASS getComputedStyle(cell, '').borderLeftColor is red
PASS getComputedStyle(cell, '').borderRightColor is red
PASS getComputedStyle(cell, '').borderTopColor is red
PASS getComputedStyle(cell, '').borderBottomColor is red
PASS getComputedStyle(table, '').borderLeftWidth is '1px'
PASS getComputedStyle(table, '').borderRightWidth is '1px'
PASS getComputedStyle(table, '').borderTopWidth is '1px'
PASS getComputedStyle(table, '').borderBottomWidth is '1px'
PASS getComputedStyle(table, '').borderLeftStyle is 'solid'
PASS getComputedStyle(table, '').borderRightStyle is 'solid'
PASS getComputedStyle(table, '').borderTopStyle is 'solid'
PASS getComputedStyle(table, '').borderBottomStyle is 'solid'
PASS getComputedStyle(table, '').borderLeftColor is yellow
PASS getComputedStyle(table, '').borderRightColor is yellow
PASS getComputedStyle(table, '').borderTopColor is yellow
PASS getComputedStyle(table, '').borderBottomColor is yellow
PASS getComputedStyle(cell, '').borderLeftWidth is '1px'
PASS getComputedStyle(cell, '').borderRightWidth is '1px'
PASS getComputedStyle(cell, '').borderTopWidth is '1px'
PASS getComputedStyle(cell, '').borderBottomWidth is '1px'
PASS getComputedStyle(cell, '').borderLeftStyle is 'solid'
PASS getComputedStyle(cell, '').borderRightStyle is 'solid'
PASS getComputedStyle(cell, '').borderTopStyle is 'solid'
PASS getComputedStyle(cell, '').borderBottomStyle is 'solid'
PASS getComputedStyle(cell, '').borderLeftColor is red
PASS getComputedStyle(cell, '').borderRightColor is red
PASS getComputedStyle(cell, '').borderTopColor is red
PASS getComputedStyle(cell, '').borderBottomColor is red
PASS getComputedStyle(table, '').borderLeftWidth is '1px'
PASS getComputedStyle(table, '').borderRightWidth is '1px'
PASS getComputedStyle(table, '').borderTopWidth is '1px'
PASS getComputedStyle(table, '').borderBottomWidth is '1px'
PASS getComputedStyle(table, '').borderLeftStyle is 'solid'
PASS getComputedStyle(table, '').borderRightStyle is 'solid'
PASS getComputedStyle(table, '').borderTopStyle is 'solid'
PASS getComputedStyle(table, '').borderBottomStyle is 'solid'
PASS getComputedStyle(table, '').borderLeftColor is yellow
PASS getComputedStyle(table, '').borderRightColor is yellow
PASS getComputedStyle(table, '').borderTopColor is yellow
PASS getComputedStyle(table, '').borderBottomColor is yellow
PASS getComputedStyle(cell, '').borderLeftWidth is '1px'
PASS getComputedStyle(cell, '').borderRightWidth is '1px'
PASS getComputedStyle(cell, '').borderTopWidth is '0px'
PASS getComputedStyle(cell, '').borderBottomWidth is '0px'
PASS getComputedStyle(cell, '').borderLeftStyle is 'solid'
PASS getComputedStyle(cell, '').borderRightStyle is 'solid'
PASS getComputedStyle(cell, '').borderTopStyle is 'none'
PASS getComputedStyle(cell, '').borderBottomStyle is 'none'
PASS getComputedStyle(cell, '').borderLeftColor is red
PASS getComputedStyle(cell, '').borderRightColor is red
PASS getComputedStyle(cell, '').borderTopColor is red
PASS getComputedStyle(cell, '').borderBottomColor is red
PASS getComputedStyle(table, '').borderLeftWidth is '1px'
PASS getComputedStyle(table, '').borderRightWidth is '1px'
PASS getComputedStyle(table, '').borderTopWidth is '1px'
PASS getComputedStyle(table, '').borderBottomWidth is '1px'
PASS getComputedStyle(table, '').borderLeftStyle is 'solid'
PASS getComputedStyle(table, '').borderRightStyle is 'solid'
PASS getComputedStyle(table, '').borderTopStyle is 'solid'
PASS getComputedStyle(table, '').borderBottomStyle is 'solid'
PASS getComputedStyle(table, '').borderLeftColor is yellow
PASS getComputedStyle(table, '').borderRightColor is yellow
PASS getComputedStyle(table, '').borderTopColor is yellow
PASS getComputedStyle(table, '').borderBottomColor is yellow
PASS getComputedStyle(cell, '').borderLeftWidth is '0px'
PASS getComputedStyle(cell, '').borderRightWidth is '0px'
PASS getComputedStyle(cell, '').borderTopWidth is '1px'
PASS getComputedStyle(cell, '').borderBottomWidth is '1px'
PASS getComputedStyle(cell, '').borderLeftStyle is 'none'
PASS getComputedStyle(cell, '').borderRightStyle is 'none'
PASS getComputedStyle(cell, '').borderTopStyle is 'solid'
PASS getComputedStyle(cell, '').borderBottomStyle is 'solid'
PASS getComputedStyle(cell, '').borderLeftColor is red
PASS getComputedStyle(cell, '').borderRightColor is red
PASS getComputedStyle(cell, '').borderTopColor is red
PASS getComputedStyle(cell, '').borderBottomColor is red
PASS successfullyParsed is true

TEST COMPLETE

