Index: pkg/polymer/lib/elements/web-animations-js/test/testcases/auto-test-inline-style-fallback.html |
diff --git a/pkg/polymer/lib/elements/web-animations-js/test/testcases/auto-test-inline-style-fallback.html b/pkg/polymer/lib/elements/web-animations-js/test/testcases/auto-test-inline-style-fallback.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..0ebe2a2fe9230ae10ae9d1c70c63b0d52702b875 |
--- /dev/null |
+++ b/pkg/polymer/lib/elements/web-animations-js/test/testcases/auto-test-inline-style-fallback.html |
@@ -0,0 +1,82 @@ |
+<!-- |
+Copyright 2013 Google Inc. All Rights Reserved. |
+ |
+Licensed under the Apache License, Version 2.0 (the "License"); |
+you may not use this file except in compliance with the License. |
+You may obtain a copy of the License at |
+ |
+ http://www.apache.org/licenses/LICENSE-2.0 |
+ |
+Unless required by applicable law or agreed to in writing, software |
+distributed under the License is distributed on an "AS IS" BASIS, |
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
+See the License for the specific language governing permissions and |
+limitations under the License. |
+--> |
+ |
+<!doctype html> |
+<style> |
+#target { |
+ background-color: lightsteelblue; |
+ width: 50px; |
+ height: 50px; |
+ position: absolute; |
+ left: 0px; |
+} |
+ |
+#spacer { |
+ height: 100px; |
+} |
+</style> |
+ |
+ |
+<div id="target"></div> |
+<div id="spacer"></div> |
+ |
+<script> |
+var expected_failures = { |
+}; |
+</script> |
+<script src="../bootstrap.js"></script> |
+<script> |
+'use strict'; |
+ |
+var target = document.querySelector('#target'); |
+ |
+// Ensure the target cannot be monkey patched with a different style object. |
+// This simulates Safari's behaviour in other browsers. |
+try { |
+ var originalStyle = target.style; |
+ Object.defineProperty(target, 'style', { |
+ get: function () {return originalStyle;}, |
+ configurable: false, |
+ }); |
+} catch (_) {} |
+ |
+ |
+document.timeline.play(new Animation(target, {left: '100px', composite: 'add'}, {duration: 1, iterations: 2, direction: 'alternate'})); |
+ |
+at(0.5, function() { |
+ assert_in_array(target.style.getPropertyValue('left'), ['', null]); |
+}); |
+ |
+testharness_timeline.schedule(function() { |
+ target.style.setProperty('left' , '50px'); |
+ assert_styles(target, {left: '150px'}, 'getComputedStyle() should return correct value after setting inline style.'); |
+}, 1000); |
+ |
+at(1.5, function() { |
+ assert_equals(target.style.getPropertyValue('left'), '50px'); |
+}); |
+ |
+testharness_timeline.schedule(function() { |
+ target.style.setProperty('left', '100px'); |
+ target.style.setProperty('background-color', 'green'); |
+}, 2500); |
+ |
+at(3, function() { |
+ assert_equals(target.style.getPropertyValue('left'), '100px'); |
+ assert_equals(target.style.getPropertyValue('background-color'), 'green'); |
+}); |
+ |
+</script> |