This test checks that the 'grid-template' shorthand is properly parsed and the longhand properties correctly assigned.

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


Test getting grid-template-areas set through CSS.
PASS window.getComputedStyle(gridTemplateWithNone, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateWithNone, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateWithNone, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleForm, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateSimpleForm, '').getPropertyValue('grid-template-rows') is "15px"
PASS window.getComputedStyle(gridTemplateSimpleForm, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNoneColumns, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNoneColumns, '').getPropertyValue('grid-template-rows') is "15px"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNoneColumns, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNoneRows, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNoneRows, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNoneRows, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNone, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNone, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithNone, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexForm, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateComplexForm, '').getPropertyValue('grid-template-rows') is "15px"
PASS window.getComputedStyle(gridTemplateComplexForm, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNames, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNames, '').getPropertyValue('grid-template-rows') is "[head] 15px [tail]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNames, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesWithoutRowSize, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesWithoutRowSize, '').getPropertyValue('grid-template-rows') is "[head] 0px [tail]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesWithoutRowSize, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleColumns, '').getPropertyValue('grid-template-columns') is "10px 20px"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleColumns, '').getPropertyValue('grid-template-rows') is "[head] 15px [tail]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleColumns, '').getPropertyValue('grid-template-areas') is "\"a b\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleColumnsWithoutRowSize, '').getPropertyValue('grid-template-columns') is "10px 20px"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleColumnsWithoutRowSize, '').getPropertyValue('grid-template-rows') is "[head] 0px [tail]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleColumnsWithoutRowSize, '').getPropertyValue('grid-template-areas') is "\"a b\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRows, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRows, '').getPropertyValue('grid-template-rows') is "[head1] 15px [tail1 head2] 20px [tail2]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRows, '').getPropertyValue('grid-template-areas') is "\"a\" \"b\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsWithoutRowsSizes, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsWithoutRowsSizes, '').getPropertyValue('grid-template-rows') is "[head1] 0px [tail1 head2] 0px [tail2]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsWithoutRowsSizes, '').getPropertyValue('grid-template-areas') is "\"a\" \"b\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsAndColumns, '').getPropertyValue('grid-template-columns') is "[first] 10px [nav nav2] 15px [nav] 15px [last]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsAndColumns, '').getPropertyValue('grid-template-rows') is "100px [nav nav2] 25px [nav nav2] 25px [last]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsAndColumns, '').getPropertyValue('grid-template-areas') is "\"a b c\" \"d e f\" \"g h i\""
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsAndColumnsWithoutRowsSizes, '').getPropertyValue('grid-template-columns') is "[first] 10px [nav nav2] 15px [nav] 15px [last]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsAndColumnsWithoutRowsSizes, '').getPropertyValue('grid-template-rows') is "0px [nav nav2] 0px [nav nav2] 0px [last]"
PASS window.getComputedStyle(gridTemplateComplexFormWithLineNamesMultipleRowsAndColumnsWithoutRowsSizes, '').getPropertyValue('grid-template-areas') is "\"a b c\" \"d e f\" \"g h i\""
PASS window.getComputedStyle(gridTemplateComplexFormWithAuto, '').getPropertyValue('grid-template-columns') is "10px"
PASS window.getComputedStyle(gridTemplateComplexFormWithAuto, '').getPropertyValue('grid-template-rows') is "0px"
PASS window.getComputedStyle(gridTemplateComplexFormWithAuto, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS window.getComputedStyle(gridTemplateComplexFormOnlyAreas, '').getPropertyValue('grid-template-columns') is "0px"
PASS window.getComputedStyle(gridTemplateComplexFormOnlyAreas, '').getPropertyValue('grid-template-rows') is "0px"
PASS window.getComputedStyle(gridTemplateComplexFormOnlyAreas, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithEmptyTrailingLineNames, '').getPropertyValue('grid-template-columns') is "0px"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithEmptyTrailingLineNames, '').getPropertyValue('grid-template-rows') is "[first] 0px"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithEmptyTrailingLineNames, '').getPropertyValue('grid-template-areas') is "\"a\""

Test getting wrong values for grid-template shorthand through CSS (they should resolve to the default: 'none')
PASS window.getComputedStyle(gridTemplateMultipleSlash, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateMultipleSlash, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateMultipleSlash, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormJustColumns, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormJustColumns, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormJustColumns, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoRows, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoRows, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoRows, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoColumns, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoColumns, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoColumns, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoColumnSize, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoColumnSize, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormNoColumnSize, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithFitContent, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithFitContent, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithFitContent, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithWrongRepeat, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithWrongRepeat, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithWrongRepeat, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone1, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone1, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone1, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone2, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone2, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone2, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone3, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone3, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone3, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone4, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone4, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateSimpleFormWithMisplacedNone4, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithRepeat, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithRepeat, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithRepeat, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithWrongRepeat, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithWrongRepeat, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithWrongRepeat, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(griTemplateComplexFormdWithFitAvailable, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(griTemplateComplexFormdWithFitAvailable, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(griTemplateComplexFormdWithFitAvailable, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormNoColumnSize, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormNoColumnSize, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormNoColumnSize, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize1, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize1, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize1, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize2, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize2, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize2, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize3, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize3, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize3, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize4, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize4, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormMisplacedRowsSize4, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormColumnsNotParsing1, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormColumnsNotParsing1, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormColumnsNotParsing1, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormColumnsNotParsing2, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormColumnsNotParsing2, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormColumnsNotParsing2, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithNoneColumns, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithNoneColumns, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateComplexFormWithNoneColumns, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithTwoEmptyTrailingLineNames, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithTwoEmptyTrailingLineNames, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithTwoEmptyTrailingLineNames, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithEmptyTrailingLineNamesAndNonEmptyLeadingLineNames, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithEmptyTrailingLineNamesAndNonEmptyLeadingLineNames, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateNoColumnsRowWithEmptyTrailingLineNamesAndNonEmptyLeadingLineNames, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateRepeat, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateRepeat, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateRepeat, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateRepeatAutoFill, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateRepeatAutoFill, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateRepeatAutoFill, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(gridTemplateRepeatAutoFit, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(gridTemplateRepeatAutoFit, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(gridTemplateRepeatAutoFit, '').getPropertyValue('grid-template-areas') is "none"

Test the initial value
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is 'none'
PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is 'none'
PASS getComputedStyle(element, '').getPropertyValue('grid-template-areas') is 'none'

Test setting grid-template-columns and grid-template-rows back to 'none' through JS
PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "10px"
PASS element.style.gridTemplateColumns is "10px"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "[line] 20px"
PASS element.style.gridTemplateRows is "[line] 20px"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS element.style.gridTemplateAreas is "\"a\""
PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS element.style.gridTemplateColumns is "none"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS element.style.gridTemplateRows is "none"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS element.style.gridTemplateAreas is "none"

Test getting and setting grid-template shorthand through JS
PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "18px"
PASS element.style.gridTemplateColumns is "18px"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "66px"
PASS element.style.gridTemplateRows is "66px"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS element.style.gridTemplateAreas is "none"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "10px"
PASS element.style.gridTemplateColumns is "10px"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "[head] 15px [tail]"
PASS element.style.gridTemplateRows is "[head] 15px [tail]"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS element.style.gridTemplateAreas is "\"a\""
PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "100px"
PASS element.style.gridTemplateColumns is "100px"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "[foo1 bar1] 50px [foo2 bar2 foo3 bar3] 50px [foo4 bar4]"
PASS element.style.gridTemplateRows is "[foo1 bar1] 50px [foo2 bar2] [foo3 bar3] 50px [foo4 bar4]"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "\"a\" \"b\""
PASS element.style.gridTemplateAreas is "\"a\" \"b\""
PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "0px"
PASS element.style.gridTemplateColumns is "none"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "0px"
PASS element.style.gridTemplateRows is "auto"
PASS getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "\"a\""
PASS element.style.gridTemplateAreas is "\"a\""

Test setting grid-template shorthand to bad values through JS
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-areas') is "none"
PASS successfullyParsed is true

TEST COMPLETE

