This layout test used to test that correct shorthand name is returned for background-repeat-x, background-repeat-y, background-position-x, background-position-y, -webkit-mask-repeat-x,-webkit-mask-repeat-y, -webkit-mask-position-x, -webkit-mask-position-y when corresponding shorthand is used in the style declaration. It tests regression described in this bug. Now that access to non author stylesheet is blocked, we should instead get null when accessing the css rules on that object.

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


PASS getShorthand("background-repeat-x", "icon1") is "null"
PASS getShorthand("background-repeat-y", "icon1") is "null"
PASS getShorthand("background-repeat", "icon1") is "null"
PASS getShorthand("background-position-x", "icon1") is "null"
PASS getShorthand("background-position-y", "icon1") is "null"
PASS getShorthand("background-position", "icon1") is "null"
PASS getShorthand("-webkit-mask-repeat-x", "icon1") is "null"
PASS getShorthand("-webkit-mask-repeat-y", "icon1") is "null"
PASS getShorthand("-webkit-mask-repeat", "icon1") is "null"
PASS getShorthand("-webkit-mask-position-x", "icon1") is "null"
PASS getShorthand("-webkit-mask-position-y", "icon1") is "null"
PASS getShorthand("-webkit-mask-repeat", "icon1") is "null"
PASS getShorthand("background-repeat-x", "icon2") is "null"
PASS getShorthand("background-repeat-y", "icon2") is "null"
PASS getShorthand("background-repeat", "icon2") is "null"
PASS getShorthand("background-position-x", "icon2") is "null"
PASS getShorthand("background-position-y", "icon2") is "null"
PASS getShorthand("background-position", "icon2") is "null"
PASS getShorthand("-webkit-mask-repeat-x", "icon2") is "null"
PASS getShorthand("-webkit-mask-repeat-y", "icon2") is "null"
PASS getShorthand("-webkit-mask-repeat", "icon2") is "null"
PASS getShorthand("-webkit-mask-position-x", "icon2") is "null"
PASS getShorthand("-webkit-mask-position-y", "icon2") is "null"
PASS getShorthand("-webkit-mask-repeat", "icon2") is "null"
PASS successfullyParsed is true

TEST COMPLETE

