mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-12 17:04:57 +00:00
137 lines
3.9 KiB
HTML
137 lines
3.9 KiB
HTML
<!doctype html>
|
|
<!--
|
|
@license
|
|
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
|
|
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE
|
|
The complete set of authors may be found at http://polymer.github.io/AUTHORS
|
|
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS
|
|
Code distributed by Google as part of the polymer project is also
|
|
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS
|
|
-->
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>paper-scroll-header-panel test</title>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
|
|
|
|
<script src="../../webcomponentsjs/webcomponents-lite.js"></script>
|
|
<script src="../../web-component-tester/browser.js"></script>
|
|
<script src="../../test-fixture/test-fixture-mocha.js"></script>
|
|
|
|
<link rel="import" href="../paper-scroll-header-panel.html">
|
|
<link rel="import" href="../demo/sample-content.html">
|
|
<link rel="import" href="../../paper-toolbar/paper-toolbar.html">
|
|
<link rel="import" href="../../test-fixture/test-fixture.html">
|
|
</head>
|
|
<body>
|
|
|
|
<test-fixture id="trivialProgress">
|
|
<template>
|
|
<paper-scroll-header-panel condenses>
|
|
<paper-toolbar>
|
|
</paper-toolbar>
|
|
<div class="content">
|
|
<sample-content size="100"></sample-content>
|
|
</div>
|
|
</paper-scroll-header-panel>
|
|
</template>
|
|
</test-fixture>
|
|
|
|
<script>
|
|
|
|
suite('scroll', function() {
|
|
var scrollHeaderPanel;
|
|
|
|
setup(function() {
|
|
scrollHeaderPanel = fixture('trivialProgress');
|
|
scrollHeaderPanel.measureHeaderHeight();
|
|
});
|
|
|
|
teardown(function() {
|
|
scrollHeaderPanel.scroll(0);
|
|
});
|
|
|
|
test('scroll smoothly', function(done) {
|
|
var destination = 100;
|
|
var adjustments = 0;
|
|
|
|
function check() {
|
|
if (scrollHeaderPanel.scroller.scrollTop === destination) {
|
|
assert.notEqual(adjustments, 0);
|
|
done();
|
|
return;
|
|
}
|
|
adjustments++;
|
|
setTimeout(check, 0);
|
|
}
|
|
scrollHeaderPanel.scroll(destination, true);
|
|
check();
|
|
});
|
|
|
|
test('condense smoothly', function(done) {
|
|
flush(function() {
|
|
var destination = 100;
|
|
var adjustments = 0;
|
|
function check() {
|
|
if (scrollHeaderPanel.headerState === Polymer.PaperScrollHeaderPanel.HEADER_STATE_CONDENSED) {
|
|
assert.notEqual(adjustments, 0);
|
|
done();
|
|
return;
|
|
}
|
|
adjustments++;
|
|
setTimeout(check, 1);
|
|
}
|
|
scrollHeaderPanel.condense(true);
|
|
check();
|
|
});
|
|
});
|
|
|
|
test('condense immediately', function(done) {
|
|
flush(function() {
|
|
scrollHeaderPanel.condense();
|
|
assert.equal(scrollHeaderPanel.headerState, Polymer.PaperScrollHeaderPanel.HEADER_STATE_CONDENSED);
|
|
done();
|
|
});
|
|
});
|
|
|
|
test('scroll to top smoothly', function(done) {
|
|
scrollHeaderPanel.scroll(100);
|
|
|
|
flush(function() {
|
|
var adjustments = 0;
|
|
function check() {
|
|
if (scrollHeaderPanel.scroller.scrollTop === 0) {
|
|
assert.notEqual(adjustments, 0);
|
|
done();
|
|
return;
|
|
}
|
|
adjustments++;
|
|
setTimeout(check, 0);
|
|
}
|
|
scrollHeaderPanel.scrollToTop(true);
|
|
check();
|
|
});
|
|
});
|
|
|
|
test('scroll to top immediately', function(done) {
|
|
scrollHeaderPanel.scroll(100);
|
|
|
|
flush(function() {
|
|
assert.equal(scrollHeaderPanel.scroller.scrollTop, 100);
|
|
|
|
scrollHeaderPanel.scrollToTop();
|
|
|
|
Polymer.Base.async(function() {
|
|
assert.equal(scrollHeaderPanel.scroller.scrollTop, 0);
|
|
done();
|
|
}, 100);
|
|
});
|
|
});
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|