summaryrefslogtreecommitdiff
path: root/runtime/js/01_internals.js
blob: a8c54ec4826b7d2b609cde4fd2c30c113aac82c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.

((window) => {
  const internalSymbol = Symbol("Deno.internal");

  // The object where all the internal fields for testing will be living.
  const internalObject = {};

  // Register a field to internalObject for test access,
  // through Deno[Deno.internal][name].
  function exposeForTest(name, value) {
    Object.defineProperty(internalObject, name, {
      value,
      enumerable: false,
    });
  }

  window.__bootstrap.internals = {
    internalSymbol,
    internalObject,
    exposeForTest,
  };
})(this);