diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2019-10-09 17:22:22 -0400 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2019-10-09 17:22:22 -0400 |
commit | 93f7f00c956c14620ef031626f124b57397ca867 (patch) | |
tree | c5a9f536e79d2c8d2d02897511a9138acaf35394 /std/util | |
parent | 28293acd9c12a94f5d769706291032e844c7b92b (diff) |
Run deno_std tests in github actions
Diffstat (limited to 'std/util')
-rw-r--r-- | std/util/async.ts | 17 | ||||
-rw-r--r-- | std/util/deep_assign.ts | 36 |
2 files changed, 29 insertions, 24 deletions
diff --git a/std/util/async.ts b/std/util/async.ts index 6e2db69dc..8c4823ad9 100644 --- a/std/util/async.ts +++ b/std/util/async.ts @@ -20,9 +20,11 @@ export interface Deferred<T> extends Promise<T> { */ export function deferred<T>(): Deferred<T> { let methods; - const promise = new Promise<T>((resolve, reject): void => { - methods = { resolve, reject }; - }); + const promise = new Promise<T>( + (resolve, reject): void => { + methods = { resolve, reject }; + } + ); return Object.assign(promise, methods)! as Deferred<T>; } @@ -109,9 +111,10 @@ export async function collectUint8Arrays( // Delays the given milliseconds and resolves. export function delay(ms: number): Promise<void> { - return new Promise((res): number => - setTimeout((): void => { - res(); - }, ms) + return new Promise( + (res): number => + setTimeout((): void => { + res(); + }, ms) ); } diff --git a/std/util/deep_assign.ts b/std/util/deep_assign.ts index b1c9f9ac9..1dfc00a5b 100644 --- a/std/util/deep_assign.ts +++ b/std/util/deep_assign.ts @@ -8,24 +8,26 @@ export function deepAssign( if (!source || typeof source !== `object`) { return; } - Object.entries(source).forEach(([key, value]: [string, unknown]): void => { - if (value instanceof Date) { - target[key] = new Date(value); - return; + Object.entries(source).forEach( + ([key, value]: [string, unknown]): void => { + if (value instanceof Date) { + target[key] = new Date(value); + return; + } + if (!value || typeof value !== `object`) { + target[key] = value; + return; + } + if (Array.isArray(value)) { + target[key] = []; + } + // value is an Object + if (typeof target[key] !== `object` || !target[key]) { + target[key] = {}; + } + deepAssign(target[key] as Record<string, unknown>, value!); } - if (!value || typeof value !== `object`) { - target[key] = value; - return; - } - if (Array.isArray(value)) { - target[key] = []; - } - // value is an Object - if (typeof target[key] !== `object` || !target[key]) { - target[key] = {}; - } - deepAssign(target[key] as Record<string, unknown>, value!); - }); + ); } return target; } |