Index: third_party/polymer/components/paper-ripple/test/paper-ripple.html |
diff --git a/third_party/polymer/components/paper-ripple/test/paper-ripple.html b/third_party/polymer/components/paper-ripple/test/paper-ripple.html |
index fdee96f9c70b92e5dcf537f60e53623c9d97169a..559f9cd35360dae6113e14d553478c9d7028d9b5 100644 |
--- a/third_party/polymer/components/paper-ripple/test/paper-ripple.html |
+++ b/third_party/polymer/components/paper-ripple/test/paper-ripple.html |
@@ -63,6 +63,13 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN |
</template> |
</test-fixture> |
+ <test-fixture id="NoRipple"> |
+ <template> |
+ <div id="RippleContainer"> |
+ </div> |
+ </template> |
+ </test-fixture> |
+ |
<script> |
suite('<paper-ripple>', function () { |
var mouseEvent; |
@@ -130,8 +137,6 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN |
}); |
}); |
- |
- |
suite('with the `center` attribute set to true', function () { |
setup(function () { |
rippleContainer = fixture('CenteringRipple'); |
@@ -191,6 +196,56 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN |
}); |
}); |
+ suite('remove a paper ripple', function () { |
+ setup(function () { |
+ rippleContainer = fixture('NoRipple'); |
+ }); |
+ test('add and remove a paper-ripple', function (done) { |
+ var ripple = document.createElement('paper-ripple'); |
+ ripple.addEventListener('transitionend', function() { |
+ expect(ripple.parentNode).to.be.ok; |
+ Polymer.dom(rippleContainer).removeChild(ripple); |
+ done(); |
+ }); |
+ Polymer.dom(rippleContainer).appendChild(ripple); |
+ ripple.downAction(); |
+ ripple.upAction(); |
+ }); |
+ test('reuse a paper-ripple', function (done) { |
+ var ripple = document.createElement('paper-ripple'); |
+ Polymer.dom(rippleContainer).appendChild(ripple); |
+ Polymer.dom(rippleContainer).removeChild(ripple); |
+ |
+ ripple.addEventListener('transitionend', function() { |
+ expect(ripple.parentNode).to.be.ok; |
+ Polymer.dom(document.body).removeChild(ripple); |
+ done(); |
+ }); |
+ Polymer.dom(document.body).appendChild(ripple); |
+ ripple.downAction(); |
+ ripple.upAction(); |
+ }); |
+ }); |
+ |
+ suite('avoid double transitionend event', function () { |
+ setup(function () { |
+ rippleContainer = fixture('NoRipple'); |
+ }); |
+ test('the transitionend event should only fire once', function (done) { |
+ var ripple = document.createElement('paper-ripple'); |
+ var transitionedEventCount = 0; |
+ ripple.addEventListener('transitionend', function() { |
+ ++transitionedEventCount; |
+ expect(transitionedEventCount).to.be.eql(1); |
+ Polymer.dom(rippleContainer).removeChild(ripple); |
+ setTimeout(function() { done(); }); |
+ }); |
+ Polymer.dom(rippleContainer).appendChild(ripple); |
+ ripple.downAction(); |
+ ripple.upAction(); |
+ }); |
+ }); |
+ |
}); |
</script> |