77 lines
3.0 KiB
Plaintext
77 lines
3.0 KiB
Plaintext
Tests for Array.prototype.filter
|
|
|
|
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
|
|
|
|
|
|
PASS Array.prototype.filter.length is 1
|
|
PASS Array.prototype.filter.name is 'filter'
|
|
PASS [undefined].filter(passUndefined) is [undefined]
|
|
PASS (new Array(20)).filter(passUndefined) is []
|
|
PASS [0,1,2,3,4,5,6,7,8,9].filter(passEven) is [0,2,4,6,8]
|
|
PASS [0,1,2,3,4,5,6,7,8,9].filter(passAfter5) is [5,6,7,8,9]
|
|
PASS mixPartialAndFast.filter(passAfter5) is [5,6,7,8,9,sparseArrayLength-1]
|
|
Generic Object
|
|
PASS toObject([undefined]).filter(passUndefined) is [undefined]
|
|
PASS toObject(new Array(20)).filter(passUndefined) is []
|
|
PASS toObject([0,1,2,3,4,5,6,7,8,9]).filter(passEven) is [0,2,4,6,8]
|
|
PASS toObject([0,1,2,3,4,5,6,7,8,9]).filter(passAfter5) is [5,6,7,8,9]
|
|
PASS toObject(mixPartialAndFast).filter(passAfter5) is [5,6,7,8,9,sparseArrayLength-1]
|
|
Array-like object with invalid lengths
|
|
PASS var obj = { 0: 1, 1: 2, 2: 3, length: 0 }; Array.prototype.filter.call(obj, throwError) is []
|
|
PASS var obj = { 0: 1, 1: 2, 2: 3, length: -0 }; Array.prototype.filter.call(obj, throwError) is []
|
|
PASS var obj = { 0: 1, 1: 2, 2: 3, length: -3 }; Array.prototype.filter.call(obj, throwError) is []
|
|
Reversed generic Object
|
|
PASS reverseInsertionOrder([undefined]).filter(passUndefined) is [undefined]
|
|
PASS reverseInsertionOrder(new Array(20)).filter(passUndefined) is []
|
|
PASS reverseInsertionOrder([0,1,2,3,4,5,6,7,8,9]).filter(passEven) is [0,2,4,6,8]
|
|
PASS reverseInsertionOrder([0,1,2,3,4,5,6,7,8,9]).filter(passAfter5) is [5,6,7,8,9]
|
|
PASS reverseInsertionOrder(mixPartialAndFast).filter(passAfter5) is [5,6,7,8,9,sparseArrayLength-1]
|
|
Log evaluation order
|
|
,0,[object Object]
|
|
PASS reverseInsertionOrder([undefined]).filter(filterLog(passUndefined)) is [undefined]
|
|
PASS reverseInsertionOrder(new Array(20)).filter(filterLog(passUndefined)) is []
|
|
0,0,[object Object]
|
|
1,1,[object Object]
|
|
2,2,[object Object]
|
|
3,3,[object Object]
|
|
4,4,[object Object]
|
|
PASS reverseInsertionOrder([0,1,2,3,4]).filter(filterLog(passEven)) is [0,2,4]
|
|
0,0,[object Object]
|
|
1,1,[object Object]
|
|
2,2,[object Object]
|
|
3,3,[object Object]
|
|
4,4,[object Object]
|
|
5,5,[object Object]
|
|
6,6,[object Object]
|
|
7,7,[object Object]
|
|
8,8,[object Object]
|
|
9,9,[object Object]
|
|
10099,10099,[object Object]
|
|
PASS reverseInsertionOrder(mixPartialAndFast).filter(filterLog(passAfter5)) is [5,6,7,8,9,sparseArrayLength-1]
|
|
,0,
|
|
PASS ([undefined]).filter(filterLog(passUndefined)) is [undefined]
|
|
PASS (new Array(20)).filter(filterLog(passUndefined)) is []
|
|
0,0,0,1,2,3,4
|
|
1,1,0,1,2,3,4
|
|
2,2,0,1,2,3,4
|
|
3,3,0,1,2,3,4
|
|
4,4,0,1,2,3,4
|
|
PASS ([0,1,2,3,4]).filter(filterLog(passEven)) is [0,2,4]
|
|
0,0,0,1,2,3,4,5,6,7,8,9,
|
|
1,1,0,1,2,3,4,5,6,7,8,9,
|
|
2,2,0,1,2,3,4,5,6,7,8,9,
|
|
3,3,0,1,2,3,4,5,6,7,8,9,
|
|
4,4,0,1,2,3,4,5,6,7,8,9,
|
|
5,5,0,1,2,3,4,5,6,7,8,9,
|
|
6,6,0,1,2,3,4,5,6,7,8,9,
|
|
7,7,0,1,2,3,4,5,6,7,8,9,
|
|
8,8,0,1,2,3,4,5,6,7,8,9,
|
|
9,9,0,1,2,3,4,5,6,7,8,9,
|
|
10099,10099,0,1,2,3,4,5,6,7,8,9,
|
|
PASS (mixPartialAndFast).filter(filterLog(passAfter5)) is [5,6,7,8,9,sparseArrayLength-1]
|
|
PASS [1,2,3].filter(function(i,j,k,l,m){ return m=!m; }) is [1,2,3]
|
|
PASS successfullyParsed is true
|
|
|
|
TEST COMPLETE
|
|
|