23 lines
406 B
JavaScript
23 lines
406 B
JavaScript
let steps = [
|
|
{ done: false, value: Promise.resolve(1) },
|
|
{ done: true, value: undefined }
|
|
];
|
|
|
|
let iterable = {
|
|
[Symbol.asyncIterator || "@@asyncIterator"]() {
|
|
return {
|
|
next: () => steps.shift(),
|
|
};
|
|
},
|
|
};
|
|
|
|
let values = [];
|
|
|
|
return async function () {
|
|
let value;
|
|
for await (value of iterable);
|
|
|
|
expect(value).toBeInstanceOf(Promise);
|
|
await expect(value).resolves.toBe(1);
|
|
}();
|