From 20354f8f5d0643535d0adc230d89149807f01243 Mon Sep 17 00:00:00 2001 From: tshemsedinov Date: Wed, 27 Mar 2019 10:10:56 +0200 Subject: [PATCH] Simple test for Web Locks API Refs: https://github.com/metarhia/metasync/issues/416 --- test/locks.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 test/locks.js diff --git a/test/locks.js b/test/locks.js new file mode 100644 index 00000000..c1a925e4 --- /dev/null +++ b/test/locks.js @@ -0,0 +1,27 @@ +'use strict'; + +const { isMainThread } = require('worker_threads'); +const { locks } = require('..'); +const { Thread } = locks; +const metatests = require('metatests'); + +const sleep = msec => new Promise(resolve => { + setTimeout(resolve, msec); +}); + +if (isMainThread) { + metatests.test('locks: enter and leave', test => { + new Thread(); + new Thread(); + + setTimeout(() => { + locks.request('A', async lock => { + test.end(); + }); + }, 100); + }); +} else { + locks.request('A', async lock => { + await sleep(100); + }); +}