MCPcopy Index your code
hub / github.com/winjs/winjs / validateFlatTree

Function validateFlatTree

tests/ListViewComponents/VirtualizeContentsViewTest.ts:83–126  ·  view source on GitHub ↗
(listView, expectedItemsPerBlock?)

Source from the content-addressed store, hash-verified

81 var defaultChunkSize, defaultMaxTime, defaultPagesToPrefetch;
82
83 function validateFlatTree(listView, expectedItemsPerBlock?) {
84 expectedItemsPerBlock = expectedItemsPerBlock || STRUCTURENODE_SIZE;
85
86 var containers;
87
88 LiveUnit.Assert.areEqual(1, listView.element.querySelectorAll(".win-itemscontainer").length);
89 LiveUnit.Assert.areEqual(0, listView.element.querySelectorAll(".win-groupheadercontainer").length);
90
91 if (!listView._view.tree[0].itemsContainer.itemsBlocks) {
92 containers = listView.element.querySelectorAll(".win-container");
93
94 LiveUnit.Assert.areEqual(listView.itemDataSource.list.length, containers.length);
95 for (var i = 0, len = containers.length; i < len; i++) {
96 var container = containers[i],
97 itemBox = container.firstElementChild;
98
99 LiveUnit.Assert.areEqual(container, listView._view.containers[i]);
100
101 if (itemBox) {
102 LiveUnit.Assert.isTrue(WinJS.Utilities.hasClass(itemBox, "win-itembox"));
103 LiveUnit.Assert.areEqual(listView.selection._isIncluded(i), WinJS.Utilities.hasClass(container, "win-selected"));
104 LiveUnit.Assert.areEqual(listView.selection._isIncluded(i), WinJS.Utilities.hasClass(itemBox, "win-selected"));
105 } else {
106 LiveUnit.Assert.isFalse(WinJS.Utilities.hasClass(container, "win-selected"));
107 }
108
109 LiveUnit.Assert.areEqual(container, listView._view.tree[0].itemsContainer.items[i]);
110 }
111
112 LiveUnit.Assert.areEqual(containers.length - 1, listView._view.lastItemIndex());
113 } else {
114 var blocks = listView._view.tree[0].itemsContainer.itemsBlocks;
115 for (var i = 0, itemIndex = 0, len = blocks.length; i < len; i++) {
116 var block = blocks[i];
117
118 LiveUnit.Assert.isTrue(i + 1 >= len || block.element.children.length === expectedItemsPerBlock);
119
120 for (var n = 0; n < block.items.length; n++) {
121 LiveUnit.Assert.areEqual(listView._view.containers[itemIndex++], block.items[n]);
122 }
123 }
124 verifyContainerStripesByIndex(listView);
125 }
126 }
127
128 function verifyTreeUpdate(layout, validate, complete) {
129 WinJS.UI._VirtualizeContentsView._chunkSize = 15;

Callers 2

verifyTreeMethod · 0.85

Calls 4

querySelectorAllMethod · 0.80
_isIncludedMethod · 0.80
hasClassMethod · 0.65

Tested by

no test coverage detected