michael@0: function f (v, i) { michael@0: var c = v[i]; michael@0: switch (c) { michael@0: case 0: michael@0: assertEq(v[i], 0); michael@0: break; michael@0: case 1: michael@0: assertEq(v[i], 1); michael@0: break; michael@0: default: michael@0: assertEq(c === 0 || c === 1, false); michael@0: } michael@0: } michael@0: michael@0: var v = [ michael@0: 0, 0.0, 0.1, 1, 1.0, 1.1, michael@0: null, undefined, true, false, {}, "", "0", "1", michael@0: { valueOf: function () { return 0; } }, michael@0: { valueOf: function () { return 1; } } michael@0: ]; michael@0: for (var i = 0; i < 100; i++) michael@0: f(v, i % v.length);