function test() { | |
var obj = { foo: 1, bar: 2 }; | |
var iterator = Reflect.enumerate(obj); | |
var passed = 1; | |
if (typeof Symbol === 'function' && 'iterator' in Symbol) { | |
passed &= Symbol.iterator in iterator; | |
} | |
var item = iterator.next(); | |
passed &= item.value === "foo" && item.done === false; | |
item = iterator.next(); | |
passed &= item.value === "bar" && item.done === false; | |
item = iterator.next(); | |
passed &= item.value === undefined && item.done === true; | |
return passed === 1; | |
} | |
if (!test()) | |
throw new Error("Test failed"); | |