Index: third_party/WebKit/LayoutTests/inspector/components/css-shadow-model.html |
diff --git a/third_party/WebKit/LayoutTests/inspector/components/css-shadow-model.html b/third_party/WebKit/LayoutTests/inspector/components/css-shadow-model.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..38c6003f407e5e914298d96e3c908d19d155dffb |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/inspector/components/css-shadow-model.html |
@@ -0,0 +1,123 @@ |
+<html> |
+<head> |
+<script src="../../http/tests/inspector/inspector-test.js"></script> |
+<script> |
+ |
+function test() |
+{ |
+ InspectorTest.addResult("Valid CSSLengths:"); |
+ dumpCSSLength("10px"); |
+ dumpCSSLength("10PX"); |
+ dumpCSSLength("-10px"); |
+ dumpCSSLength("+10px"); |
+ dumpCSSLength("10.11px"); |
+ dumpCSSLength(".11px"); |
+ dumpCSSLength("10e3px"); |
+ dumpCSSLength("10E3px"); |
+ dumpCSSLength("10.11e3px"); |
+ dumpCSSLength("-10.11e-3px"); |
+ dumpCSSLength("0px"); |
+ dumpCSSLength("0"); |
+ dumpCSSLength("-0.0"); |
+ dumpCSSLength("+0.0"); |
+ dumpCSSLength("0e-3"); |
+ // Start invalid lengths |
+ dumpCSSLength(""); |
+ dumpCSSLength("10"); |
+ dumpCSSLength("10 px"); |
+ dumpCSSLength("10.px"); |
+ dumpCSSLength("10pxx"); |
+ dumpCSSLength("10.10.10px"); |
+ dumpCSSLength("hello10pxhello"); |
+ |
+ InspectorTest.addResult("\nValid Text Shadows:"); |
+ dumpTextShadow("0 0"); |
+ dumpTextShadow("1px 2px"); |
+ dumpTextShadow("1px 2px black"); |
+ dumpTextShadow("1px 2px 2px"); |
+ dumpTextShadow("rgb(0, 0, 0) 1px 2px 2px"); |
+ dumpTextShadow("1px 2px 2px rgb(0, 0, 0)"); |
+ dumpTextShadow("1px 2px black, 0 0 #ffffff"); |
+ dumpTextShadow("1px -2px black, 0 0 rgb(0, 0, 0), 3px 3.5px 3px"); |
+ // Start invalid text shadows |
+ dumpTextShadow(""); |
+ dumpTextShadow("0"); |
+ dumpTextShadow("1 2 black"); |
+ dumpTextShadow("1px black 2px"); |
+ dumpTextShadow("1px 2px 2px 3px"); |
+ dumpTextShadow("inset 1px 2px 2px"); |
+ dumpTextShadow("red 1px 2px 2px red"); |
+ dumpTextShadow("1px 2px rgb(0, 0, 0) 2px"); |
+ dumpTextShadow("hello 1px 2px"); |
+ dumpTextShadow("1px 2px black 0 0 #ffffff"); |
+ dumpTextShadow("1px2px"); |
+ dumpTextShadow("1px 2pxrgb(0, 0, 0)"); |
+ dumpTextShadow("1px 2px black,, 0 0 #ffffff"); |
+ |
+ InspectorTest.addResult("\nValid Box Shadows:"); |
+ dumpBoxShadow("0 0"); |
+ dumpBoxShadow("1px 2px"); |
+ dumpBoxShadow("1px 2px black"); |
+ dumpBoxShadow("1px 2px 2px"); |
+ dumpBoxShadow("1px 2px 2px 3px"); |
+ dumpBoxShadow("inset 1px 2px"); |
+ dumpBoxShadow("1px 2px inset"); |
+ dumpBoxShadow("INSET 1px 2px 2px 3px"); |
+ dumpBoxShadow("rgb(0, 0, 0) 1px 2px 2px"); |
+ dumpBoxShadow("inset rgb(0, 0, 0) 1px 2px 2px"); |
+ dumpBoxShadow("inset 1px 2px 2px 3px rgb(0, 0, 0)"); |
+ dumpBoxShadow("1px 2px 2px 3px rgb(0, 0, 0) inset"); |
+ dumpBoxShadow("1px 2px black, inset 0 0 #ffffff"); |
+ dumpBoxShadow("1px -2px black, inset 0 0 rgb(0, 0, 0), 3px 3.5px 3px 4px"); |
+ // Start invalid box shadows |
+ dumpBoxShadow(""); |
+ dumpBoxShadow("0"); |
+ dumpBoxShadow("1 2 black"); |
+ dumpBoxShadow("1px black 2px"); |
+ dumpBoxShadow("1px 2px 2px 3px 4px"); |
+ dumpBoxShadow("1px 2px 2px inset 3px"); |
+ dumpBoxShadow("inset 1px 2px 2px inset"); |
+ dumpBoxShadow("1px 2px rgb(0, 0, 0) 2px"); |
+ dumpBoxShadow("hello 1px 2px"); |
+ dumpBoxShadow("1px 2px black 0 0 #ffffff"); |
+ dumpBoxShadow("1px2px"); |
+ dumpBoxShadow("1px 2pxrgb(0, 0, 0)"); |
+ dumpBoxShadow("1px 2px black,, 0 0 #ffffff"); |
+ |
+ InspectorTest.completeTest(); |
+ |
+ function dumpCSSLength(lengthText) |
+ { |
+ var length = WebInspector.CSSLength.parse(lengthText); |
+ if (length !== null) |
+ InspectorTest.addResult(length.asCSSText()); |
+ } |
+ |
+ function dumpTextShadow(shadowText) |
+ { |
+ _dumpShadow(WebInspector.CSSShadowModel.parseTextShadow(shadowText)); |
+ } |
+ |
+ function dumpBoxShadow(shadowText) |
+ { |
+ _dumpShadow(WebInspector.CSSShadowModel.parseBoxShadow(shadowText)); |
+ } |
+ |
+ function _dumpShadow(shadows) |
lushnikov
2016/08/19 16:24:35
only private class methods start with "_"
in this
flandy
2016/08/19 21:50:39
Done.
|
+ { |
+ if (shadows === null) |
+ return; |
+ var output = []; |
+ for (var i = 0; i < shadows.length; i++) |
+ output.push(shadows[i].asCSSText()); |
+ InspectorTest.addResult(output.join(", ")); |
+ } |
+} |
+ |
+</script> |
+</head> |
+ |
+<body onload="runTest()"> |
+<p>Tests CSSLength.parse, CSSShadowModel.parseTextShadow, and CSSShadowModel.parseBoxShadow.</p> |
+</body> |
+</html> |