test('Array accessor methods', 11, function () { var l = new List([ 'a', 'b', 'c' ]), sliced = l.slice(2), joined = l.join(' | '), concatenated = l.concat([ 2, 1 ], new List([0])); ok(sliced instanceof List, 'Slice is an Observable list'); equal(sliced.length, 1, 'Sliced off two elements'); equal(sliced[0], 'c', 'Single element as expected'); equal(joined, 'a | b | c', 'Joined list properly'); ok(concatenated instanceof List, 'Concatenated is an Observable list'); deepEqual(concatenated.serialize(), [ 'a', 'b', 'c', 2, 1, 0 ], 'List concatenated properly'); l.forEach(function (letter, index) { ok(true, 'Iteration'); if (index === 0) { equal(letter, 'a', 'First letter right'); } if (index === 2) { equal(letter, 'c', 'Last letter right'); } }); });
var joined = new Observation(function(){ return list.join(","); }, null, {