Spaces:
Runtime error
Runtime error
| ; | |
| var iteratorSymbol = require("es6-symbol").iterator; | |
| module.exports = function (T) { | |
| return { | |
| "Values": function (a) { | |
| var x = ["raz", "dwa", "trzy", "cztery", "pięć", "sześć"], it; | |
| it = new T(x); | |
| a(it[iteratorSymbol](), it, "@@iterator"); | |
| a.deep(it.next(), { done: false, value: "raz" }, "#1"); | |
| a.deep(it.next(), { done: false, value: "dwa" }, "#2"); | |
| x.splice(1, 0, "elo"); | |
| a.deep(it.next(), { done: false, value: "dwa" }, "Insert"); | |
| a.deep(it.next(), { done: false, value: "trzy" }, "#3"); | |
| a.deep(it.next(), { done: false, value: "cztery" }, "#4"); | |
| x.pop(); | |
| a.deep(it.next(), { done: false, value: "pięć" }, "#5"); | |
| a.deep(it.next(), { done: true, value: undefined }, "End"); | |
| }, | |
| "Keys & Values": function (a) { | |
| var x = ["raz", "dwa", "trzy", "cztery", "pięć", "sześć"], it; | |
| it = new T(x, "key+value"); | |
| a(it[iteratorSymbol](), it, "@@iterator"); | |
| a.deep(it.next(), { done: false, value: [0, "raz"] }, "#1"); | |
| a.deep(it.next(), { done: false, value: [1, "dwa"] }, "#2"); | |
| x.splice(1, 0, "elo"); | |
| a.deep(it.next(), { done: false, value: [2, "dwa"] }, "Insert"); | |
| a.deep(it.next(), { done: false, value: [3, "trzy"] }, "#3"); | |
| a.deep(it.next(), { done: false, value: [4, "cztery"] }, "#4"); | |
| x.pop(); | |
| a.deep(it.next(), { done: false, value: [5, "pięć"] }, "#5"); | |
| a.deep(it.next(), { done: true, value: undefined }, "End"); | |
| }, | |
| "Keys": function (a) { | |
| var x = ["raz", "dwa", "trzy", "cztery", "pięć", "sześć"], it; | |
| it = new T(x, "key"); | |
| a(it[iteratorSymbol](), it, "@@iterator"); | |
| a.deep(it.next(), { done: false, value: 0 }, "#1"); | |
| a.deep(it.next(), { done: false, value: 1 }, "#2"); | |
| x.splice(1, 0, "elo"); | |
| a.deep(it.next(), { done: false, value: 2 }, "Insert"); | |
| a.deep(it.next(), { done: false, value: 3 }, "#3"); | |
| a.deep(it.next(), { done: false, value: 4 }, "#4"); | |
| x.pop(); | |
| a.deep(it.next(), { done: false, value: 5 }, "#5"); | |
| a.deep(it.next(), { done: true, value: undefined }, "End"); | |
| }, | |
| "Sparse": function (a) { | |
| var x = new Array(6), it; | |
| x[2] = "raz"; | |
| x[4] = "dwa"; | |
| it = new T(x); | |
| a.deep(it.next(), { done: false, value: undefined }, "#1"); | |
| a.deep(it.next(), { done: false, value: undefined }, "#2"); | |
| a.deep(it.next(), { done: false, value: "raz" }, "#3"); | |
| a.deep(it.next(), { done: false, value: undefined }, "#4"); | |
| a.deep(it.next(), { done: false, value: "dwa" }, "#5"); | |
| a.deep(it.next(), { done: false, value: undefined }, "#6"); | |
| a.deep(it.next(), { done: true, value: undefined }, "End"); | |
| } | |
| }; | |
| }; | |