blob: c34c3803788452bccc615ca4b53739bd1b5dd01c [file] [log] [blame]
<!doctype html>
<html>
<head>
<title>polymer-collapse</title>
<script src="../../../platform/platform.js"></script>
<script src="../../../tools/test/htmltest.js"></script>
<script src="../../../tools/test/chai/chai.js"></script>
<link rel="import" href="../../polymer-collapse.html">
</head>
<body>
<button onclick="document.querySelector('#collapse').toggle()">toggle collapse</button>
<div id="box">
Forma temperiemque cornua sidera dissociata cornua recessit innabilis ligavit: solidumque coeptis nullus caelum sponte phoebe di regat mentisque tanta austro capacius amphitrite sui quin postquam semina fossae liquidum umor galeae coeptis caligine liberioris quin liquidum matutinis invasit posset: flexi glomeravit radiis certis invasit oppida postquam onerosior inclusum dominari opifex terris pace finxit quam aquae nunc sine altae auroram quam habentem homo totidemque scythiam in pondus ensis tegit caecoque poena lapidosos humanas coeperunt poena aetas totidem nec natura aethera locavit caelumque distinxit animalibus phoebe cingebant moderantum porrexerat terrae possedit sua sole diu summaque obliquis melioris orbem
</div>
<polymer-collapse id="collapse" targetId="box" duration="0.1"></polymer-collapse>
<script>
var assert = chai.assert;
var delay = 200;
document.addEventListener('polymer-ready', function() {
var c = document.querySelector('#collapse');
assert.equal(c.closed, false);
Platform.flush();
setTimeout(function() {
var origH = getBoxComputedHeight();
assert.notEqual(origH, 0);
c.closed = true;
Platform.flush();
setTimeout(function() {
// after closed, height is 0
assert.equal(getBoxComputedHeight(), 0);
// should be set to display: none
assert.equal(getBoxComputedStyle().display, 'none');
c.closed = false;
Platform.flush();
setTimeout(function() {
// verify computed height
assert.equal(getBoxComputedHeight(), origH);
// after opened, height is set to 'auto'
assert.equal(document.querySelector('#box').style.height, 'auto');
done();
}, delay);
}, delay);
}, delay);
});
function getBoxComputedStyle() {
var b = document.querySelector('#box');
return getComputedStyle(b);
}
function getBoxComputedHeight() {
return parseInt(getBoxComputedStyle().height);
}
</script>
</body>
</html>