This commit is contained in:
2021-10-11 11:00:09 +03:00
parent 20f49c1572
commit 46ef6b48ec
3 changed files with 230 additions and 53 deletions
+54 -8
View File
@@ -3,8 +3,8 @@
<script src="../assets/core/core.register.js"></script>
<?
print_r('by php collection: ');
$x = [];
$x[10] = 10;
$x[1] = 1;
print_r($x);
@@ -14,7 +14,17 @@ print_r($x);
<script>
kit.PluginManager.install('Collection');
o = {
1: 10,
2: 20,
keyAs: 'vAs'
};
a = [10,20,30];
a['as'] = 100;
(function () {
window.args = arguments;
})(1, 2, 3, 'as');
function assertSame(value, need, msg) {
if(value === need) {
@@ -37,9 +47,9 @@ kit.ready(['collection'], function () {
arr[10] = 100;
var collection = new kit.Collection(arr);
assertSame(collection.count(), 1, 'Количество');
assertSame(collection.has(10), true, 'has');
assertSame(collection.has('10'), true, 'has');
assertSame(collection.has('5'), false, 'has');
assertSame(collection.has(10), true, 'has (int) 10');
assertSame(collection.has('10'), true, 'has 10');
assertSame(collection.has('5'), false, 'has 5');
assertSame(collection.get(3, 2), 2, 'get');
assertSame(collection.get(10, 2), 100, 'get');
assertSame(collection.get(11), undefined, 'get');
@@ -53,6 +63,7 @@ kit.ready(['collection'], function () {
b: 2,
10: 3,
};
collection = new kit.Collection(ob);
assertSame(collection.count(), 3, 'Количество');
assertSame(collection.has(10), true, 'has');
@@ -67,7 +78,7 @@ kit.ready(['collection'], function () {
b: 2,
10: 3,
5: 19,
}), 'get');
}), 'get all');
var testFunction = function (q, w, e, r, t, y) {
@@ -116,8 +127,8 @@ kit.ready(['collection'], function () {
assertSame(collection.keys().count(), 3, 'keys');
x = new kit.Collection({1: 1, 100: 100});
xOb = {1: 1, 100: 100};
x = new kit.Collection(xOb);
x.push(200);
assertSame(x.last(), 200, 'object push last');
x.push(0);
@@ -127,12 +138,47 @@ kit.ready(['collection'], function () {
x.push('window');
assertSame(x.last(), 'window', 'object push last');
assertSame(x.get(x.lastKey()), 'window', 'get lastKey');
assertSame(x.length, 6, 'length');
x = new kit.Collection([1, 100]);
x.push(200);
assertSame(x.last(), 200, 'array push last');
x.push(0);
assertSame(x.last(), 0, 'array push last');
assertSame(x.length, 4, 'length');
x = new kit.Collection({1: 1, 100: 100});
x.push(10);
x.set('as', 13);
assertSame(x.length, 4, 'length');
x.forget('as');
assertSame(x.length, 3, 'length after forget');
assertSame(x.get('as', 33), 33, 'get after forget');
xOb = {1: 10, 100: 101};
x = new kit.Collection(xOb);
assertSame(x.pull(100), 101, 'pull');
assertSame(x.length, 1, 'length after pull');
xOb = {1: 10, 100: 101};
x = new kit.Collection(xOb);
assertSame(x.pop(), 101, 'pop');
assertSame(x.length, 1, 'length after pop');
xOb = {1: 10, 100: 101};
x = new kit.Collection(xOb);
assertSame(x.shift(), 10, 'shift');
assertSame(x.length, 1, 'length after shift');
xOb = {a: 'a10', b: 'b11'};
x = new kit.Collection(xOb);
x.set(1, 10);
assertSame(x.shift(), 'a10', 'shift +');
assertSame(x.length, 2, 'length after shift');
assertSame(x.last(), 10, 'last after shift');
});