summaryrefslogtreecommitdiff
path: root/cli/js/internals.ts
blob: dd02a5fa9a6019a56e0f41878425441aa720283a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
export const internalSymbol = Symbol("Deno.internal");

// The object where all the internal fields for testing will be living.
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const internalObject: { [key: string]: any } = {};

// Register a field to internalObject for test access,
// through Deno[Deno.internal][name].
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export function exposeForTest(name: string, value: any): void {
  Object.defineProperty(internalObject, name, {
    value,
    enumerable: false,
  });
}