@itwin/insights-client
Version:
Insights client for the iTwin platform
46 lines • 1.81 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.sleep = exports.createGuidValue = exports.cleanupDirectory = exports.createDirectory = exports.TestSetupError = void 0;
/*---------------------------------------------------------------------------------------------
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
* See LICENSE.md in the project root for license terms and full copyright notice.
*--------------------------------------------------------------------------------------------*/
const fs = require("fs");
const path = require("path");
class TestSetupError extends Error {
constructor(message) {
super(message);
this.name = "TestSetupFailed";
}
}
exports.TestSetupError = TestSetupError;
function createDirectory(directoryPath) {
if (fs.existsSync(directoryPath))
return;
const parentDirectory = path.dirname(directoryPath);
createDirectory(parentDirectory);
fs.mkdirSync(directoryPath);
}
exports.createDirectory = createDirectory;
function cleanupDirectory(directory) {
if (fs.existsSync(directory)) {
fs.rmSync(directory, { recursive: true });
fs.mkdirSync(directory);
}
}
exports.cleanupDirectory = cleanupDirectory;
function createGuidValue() {
// https://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript
// cspell:disable-next-line
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
const r = Math.random() * 16 | 0;
const v = c === "x" ? r : (r & 0x3 | 0x8);
return v.toString(16);
});
}
exports.createGuidValue = createGuidValue;
async function sleep(ms) {
return new Promise((resolve) => setTimeout(resolve, ms));
}
exports.sleep = sleep;
//# sourceMappingURL=CommonTestUtils.js.map