summaryrefslogtreecommitdiff
path: root/test/parallel/test-async-local-storage-snapshot.js
blob: 63e47ba3ce0ac0f9e94caafed26587d260c3a7c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
'use strict';

const common = require('../common');
const { strictEqual } = require('assert');
const { AsyncLocalStorage } = require('async_hooks');

const asyncLocalStorage = new AsyncLocalStorage();
const runInAsyncScope =
  asyncLocalStorage.run(123, common.mustCall(() => AsyncLocalStorage.snapshot()));
const result =
  asyncLocalStorage.run(321, common.mustCall(() => {
    return runInAsyncScope(() => {
      return asyncLocalStorage.getStore();
    });
  }));
strictEqual(result, 123);