Test the parsing of the cursor property.

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

Test a bunch of cursor rules which should round-trip exactly.
PASS roundtripCssRule(`cursor: auto;`) is "cursor: auto;"
PASS roundtripCssRule(`cursor: none;`) is "cursor: none;"
PASS roundtripCssRule(`cursor: copy;`) is "cursor: copy;"
PASS roundtripCssRule(`cursor: zoom-in;`) is "cursor: zoom-in;"
PASS roundtripCssRule(`cursor: zoom-out;`) is "cursor: zoom-out;"
PASS roundtripCssRule(`cursor: grab;`) is "cursor: grab;"
PASS roundtripCssRule(`cursor: grabbing;`) is "cursor: grabbing;"
PASS roundtripCssRule(`cursor: -webkit-grab;`) is "cursor: -webkit-grab;"
PASS roundtripCssRule(`cursor: -webkit-grabbing;`) is "cursor: -webkit-grabbing;"
PASS roundtripCssRule(`cursor: -webkit-zoom-in;`) is "cursor: -webkit-zoom-in;"
PASS roundtripCssRule(`cursor: -webkit-zoom-out;`) is "cursor: -webkit-zoom-out;"
PASS roundtripCssRule(`cursor: url("file:///foo.png"), crosshair;`) is "cursor: url(\"file:///foo.png\"), crosshair;"
PASS roundtripCssRule(`cursor: url("file:///foo.png"), url("file:///foo2.png"), pointer;`) is "cursor: url(\"file:///foo.png\"), url(\"file:///foo2.png\"), pointer;"
PASS roundtripCssRule(`cursor: url("file:///foo.png") 12 3, pointer;`) is "cursor: url(\"file:///foo.png\") 12 3, pointer;"
PASS roundtripCssRule(`cursor: url("file:///foo.png") 0 0, pointer;`) is "cursor: url(\"file:///foo.png\") 0 0, pointer;"
PASS roundtripCssRule(`cursor: url("file:///foo.png") 12 3, url("file:///foo2.png"), url("file:///foo3.png") 6 7, crosshair;`) is "cursor: url(\"file:///foo.png\") 12 3, url(\"file:///foo2.png\"), url(\"file:///foo3.png\") 6 7, crosshair;"
PASS roundtripCssRule(`cursor: url("file:///foo.png") -2 3, pointer;`) is "cursor: url(\"file:///foo.png\") -2 3, pointer;"
PASS roundtripCssRule(`cursor: url("file:///foo.png") 2 -3, pointer;`) is "cursor: url(\"file:///foo.png\") 2 -3, pointer;"
PASS roundtripCssRule(`cursor: url("file:///foo.png") -1 -1, pointer;`) is "cursor: url(\"file:///foo.png\") -1 -1, pointer;"


Test a bunch of invalid cursor rules which shouldn't parse at all.
PASS roundtripCssRule(`cursor: nonexistent;`) is ""
PASS roundtripCssRule(`cursor: ltr;`) is ""
PASS roundtripCssRule(`cursor: inline;`) is ""
PASS roundtripCssRule(`cursor: hand;`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png");`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png"),;`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png"), url("file:///foo2.png");`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png") 12;`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png") 12 3 5;`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png") x y;`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png") auto;`) is ""
PASS roundtripCssRule(`cursor: url("file:///foo.png") hand;`) is ""
PASS successfullyParsed is true

TEST COMPLETE

