Index: third_party/WebKit/LayoutTests/animations/svg-attribute-composition/svg-viewBox-composition.html |
diff --git a/third_party/WebKit/LayoutTests/animations/svg-attribute-composition/svg-viewBox-composition.html b/third_party/WebKit/LayoutTests/animations/svg-attribute-composition/svg-viewBox-composition.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..b8451dcaa15a4900e470b377e72e3579eb0ce205 |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/animations/svg-attribute-composition/svg-viewBox-composition.html |
@@ -0,0 +1,78 @@ |
+<!DOCTYPE html> |
+<html> |
+<body> |
+<template id="target-template"> |
+<svg width="0" height="0"> |
+ <defs> |
+ <marker class="target" /> |
+ </defs> |
+</svg> |
+</template> |
+<script src="../svg-attribute-interpolation/resources/interpolation-test.js"></script> |
+<script> |
+'use strict'; |
+assertAttributeInterpolation({ |
+ property: 'viewBox', |
+ underlying: '10, 10, 10, 10', |
+ from: '10, 20, 80, 90', |
+ fromComposite: 'add', |
+ to: '20, 30, 70, 80', |
+ toComposite: 'add', |
+}, [ |
+ {at: -0.4, is: '16, 26, 94, 104'}, |
+ {at: 0, is: '20, 30, 90, 100'}, |
+ {at: 0.2, is: '22, 32, 88, 98'}, |
+ {at: 0.6, is: '26, 36, 84, 94'}, |
+ {at: 1, is: '30, 40, 80, 90'}, |
+ {at: 1.4, is: '34, 44, 76, 86'}, |
+]); |
+ |
+assertAttributeInterpolation({ |
+ property: 'viewBox', |
+ underlying: '10, 10, 10, 10', |
+ from: '10, 20, 80, 90', |
+ fromComposite: 'add', |
+ to: '20, 30, 70, 80', |
+ toComposite: 'replace', |
+}, [ |
+ {at: -0.4, is: '20, 30, 98, 108'}, |
+ {at: 0, is: '20, 30, 90, 100'}, |
+ {at: 0.2, is: '20, 30, 86, 96'}, |
+ {at: 0.6, is: '20, 30, 78, 88'}, |
+ {at: 1, is: '20, 30, 70, 80'}, |
+ {at: 1.4, is: '20, 30, 62, 72'}, |
+]); |
+ |
+assertAttributeInterpolation({ |
+ property: 'viewBox', |
+ underlying: '10, 10, 10, 10', |
+ from: '10, 20, 80, 90', |
+ fromComposite: 'replace', |
+ to: '20, 30, 70, 80', |
+ toComposite: 'add', |
+}, [ |
+ {at: -0.4, is: '2, 12, 80, 90'}, |
+ {at: 0, is: '10, 20, 80, 90'}, |
+ {at: 0.2, is: '14, 24, 80, 90'}, |
+ {at: 0.6, is: '22, 32, 80, 90'}, |
+ {at: 1, is: '30, 40, 80, 90'}, |
+ {at: 1.4, is: '38, 48, 80, 90'}, |
+]); |
+ |
+assertAttributeInterpolation({ |
+ property: 'viewBox', |
+ underlying: '10, 20, 80, 90', |
+ from: neutralKeyframe, |
+ to: '20, 30, 70, 80', |
+ toComposite: 'replace', |
+}, [ |
+ {at: -0.4, is: '6, 16, 84, 94'}, |
+ {at: 0, is: '10, 20, 80, 90'}, |
+ {at: 0.2, is: '12, 22, 78, 88'}, |
+ {at: 0.6, is: '16, 26, 74, 84'}, |
+ {at: 1, is: '20, 30, 70, 80'}, |
+ {at: 1.4, is: '24, 34, 66, 76'}, |
+]); |
+</script> |
+</body> |
+</html> |