mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-22 18:31:13 +00:00
Everywhere: Hoist the Libraries folder to the top-level
This commit is contained in:
parent
950e819ee7
commit
93712b24bf
Notes:
github-actions[bot]
2024-11-10 11:51:52 +00:00
Author: https://github.com/trflynn89
Commit: 93712b24bf
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/2256
Reviewed-by: https://github.com/sideshowbarker
4547 changed files with 104 additions and 113 deletions
|
@ -1,80 +0,0 @@
|
|||
test("length is 1", () => {
|
||||
expect(Array.fromAsync).toHaveLength(1);
|
||||
});
|
||||
|
||||
describe("normal behavior", () => {
|
||||
function checkResult(promise, type = Array) {
|
||||
expect(promise).toBeInstanceOf(Promise);
|
||||
let error = null;
|
||||
let passed = false;
|
||||
promise
|
||||
.then(value => {
|
||||
expect(value instanceof type).toBeTrue();
|
||||
expect(value[0]).toBe(0);
|
||||
expect(value[1]).toBe(2);
|
||||
expect(value[2]).toBe(4);
|
||||
passed = true;
|
||||
})
|
||||
.catch(value => {
|
||||
error = value;
|
||||
});
|
||||
runQueuedPromiseJobs();
|
||||
expect(error).toBeNull();
|
||||
expect(passed).toBeTrue();
|
||||
}
|
||||
|
||||
test("async from sync iterable no mapfn", () => {
|
||||
const input = [0, Promise.resolve(2), Promise.resolve(4)].values();
|
||||
const promise = Array.fromAsync(input);
|
||||
checkResult(promise);
|
||||
});
|
||||
|
||||
test("from object of promises no mapfn", () => {
|
||||
let promise = Array.fromAsync({
|
||||
length: 3,
|
||||
0: Promise.resolve(0),
|
||||
1: Promise.resolve(2),
|
||||
2: Promise.resolve(4),
|
||||
});
|
||||
checkResult(promise);
|
||||
});
|
||||
|
||||
test("async from sync iterable with mapfn", () => {
|
||||
const input = [Promise.resolve(0), 1, Promise.resolve(2)].values();
|
||||
const promise = Array.fromAsync(input, async element => element * 2);
|
||||
checkResult(promise);
|
||||
});
|
||||
|
||||
test("from object of promises with mapfn", () => {
|
||||
let promise = Array.fromAsync(
|
||||
{
|
||||
length: 3,
|
||||
0: Promise.resolve(0),
|
||||
1: Promise.resolve(1),
|
||||
2: Promise.resolve(2),
|
||||
},
|
||||
async element => element * 2
|
||||
);
|
||||
checkResult(promise);
|
||||
});
|
||||
|
||||
test("does not double construct from array like object", () => {
|
||||
let callCount = 0;
|
||||
|
||||
class TestArray {
|
||||
constructor() {
|
||||
callCount += 1;
|
||||
}
|
||||
}
|
||||
|
||||
let promise = Array.fromAsync.call(TestArray, {
|
||||
length: 3,
|
||||
0: Promise.resolve(0),
|
||||
1: Promise.resolve(2),
|
||||
2: Promise.resolve(4),
|
||||
});
|
||||
|
||||
checkResult(promise, TestArray);
|
||||
expect(callCount).toBe(1);
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue