mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-19 11:58:20 -07:00
105 lines
3.0 KiB
HTML
105 lines
3.0 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>iron-list 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>
|
||
|
|
||
|
<link rel="import" href="helpers.html">
|
||
|
<link rel="import" href="x-list.html">
|
||
|
|
||
|
</head>
|
||
|
<body>
|
||
|
|
||
|
<test-fixture id="trivialList">
|
||
|
<template>
|
||
|
<x-list list-height="100" item-height="2"></x-list>
|
||
|
</template>
|
||
|
</test-fixture>
|
||
|
|
||
|
<test-fixture id="trivialListSmall">
|
||
|
<template>
|
||
|
<x-list list-height="2" item-height="2"></x-list>
|
||
|
</template>
|
||
|
</test-fixture>
|
||
|
|
||
|
<script>
|
||
|
|
||
|
suite('dynamic physical count', function() {
|
||
|
var list, container;
|
||
|
|
||
|
setup(function() {
|
||
|
container = fixture('trivialList');
|
||
|
list = container.list;
|
||
|
list.items = buildDataSet(200);
|
||
|
});
|
||
|
|
||
|
test('increase pool size', function(done) {
|
||
|
setTimeout(function() {
|
||
|
list.scrollTop = 0;
|
||
|
|
||
|
var lastItem = getLastItemFromList(list);
|
||
|
var lastItemHeight = lastItem.offsetHeight;
|
||
|
var expectedFinalItem = container.listHeight/lastItemHeight - 1;
|
||
|
|
||
|
assert.equal(list.offsetHeight, container.listHeight);
|
||
|
assert.equal(lastItemHeight, 2);
|
||
|
assert.isTrue(isFullOfItems(list));
|
||
|
assert.equal(lastItem.textContent, expectedFinalItem);
|
||
|
done();
|
||
|
}, 100);
|
||
|
});
|
||
|
});
|
||
|
|
||
|
suite('iron-resize', function() {
|
||
|
var list, container;
|
||
|
|
||
|
setup(function() {
|
||
|
container = fixture('trivialListSmall');
|
||
|
list = container.list;
|
||
|
list.style.display = 'none';
|
||
|
list.items = buildDataSet(200);
|
||
|
});
|
||
|
|
||
|
test('increase pool size after resizing the list', function(done) {
|
||
|
flush(function() {
|
||
|
list.style.display = '';
|
||
|
assert.notEqual(getFirstItemFromList(list).textContent, '0', 'Item should not be rendered');
|
||
|
|
||
|
list.fire('iron-resize');
|
||
|
|
||
|
flush(function() {
|
||
|
assert.equal(getFirstItemFromList(list).textContent, '0', 'Item should be rendered');
|
||
|
done();
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
|
||
|
test('pool should not increase if the list has no size', function(done) {
|
||
|
container.style.display = 'none';
|
||
|
list.fire('iron-resize');
|
||
|
|
||
|
flush(function() {
|
||
|
assert.isFalse(list._increasePoolIfNeeded());
|
||
|
done();
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
|
||
|
</script>
|
||
|
|
||
|
</body>
|
||
|
</html>
|