npm package diff

Package: @forge/cli-shared

Versions: 6.6.2-next.1 - 6.6.2-next.2

File: package/out/shared/test.js

Index: package/out/shared/test.js
===================================================================
--- package/out/shared/test.js
+++ package/out/shared/test.js
@@ -0,0 +1,52 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.createTestApp = exports.mockLogger = void 0;
+const tslib_1 = require("tslib");
+const promises_1 = require("fs/promises");
+const path_1 = tslib_1.__importDefault(require("path"));
+const fs_extra_1 = require("fs-extra");
+const directories_1 = require("./directories");
+function mockLogger(traceEnabled, debugEnabled) {
+    return {
+        traceEnabled,
+        debugEnabled,
+        trace: jest.fn(),
+        debug: jest.fn(),
+        info: jest.fn(),
+        warn: jest.fn(),
+        error: jest.fn(),
+        snapshotLog: jest.fn()
+    };
+}
+exports.mockLogger = mockLogger;
+async function createTestApp({ userCode, packages }) {
+    const appDirectory = (0, directories_1.tmpDir)();
+    const srcDirectory = path_1.default.join(appDirectory, 'src');
+    await (0, fs_extra_1.ensureDir)(srcDirectory);
+    const userCodePath = path_1.default.join(srcDirectory, 'index.ts');
+    await (0, promises_1.writeFile)(userCodePath, userCode);
+    await (0, promises_1.writeFile)(path_1.default.join(appDirectory, 'tsconfig.json'), JSON.stringify({}));
+    const allPackages = ['@types/node', ...(packages ?? [])];
+    await (0, promises_1.writeFile)(path_1.default.join(appDirectory, 'package.json'), JSON.stringify({
+        dependencies: Object.fromEntries(allPackages.map((pkg) => [pkg, '*']))
+    }));
+    const monorepoNodeModules = path_1.default.join(__dirname, '..', '..', '..', '..', 'node_modules');
+    const monorepoPackages = path_1.default.join(__dirname, '..', '..', '..', '..', 'packages');
+    for (const pkg of allPackages) {
+        let src;
+        if (pkg.startsWith('@forge/')) {
+            src = path_1.default.join(monorepoPackages, pkg.replace('@forge/', 'forge-'));
+        }
+        else {
+            src = path_1.default.join(monorepoNodeModules, pkg);
+        }
+        const dest = path_1.default.join(appDirectory, 'node_modules', pkg);
+        await (0, fs_extra_1.ensureDir)(dest);
+        await (0, fs_extra_1.copy)(src, dest);
+    }
+    return {
+        appDirectory,
+        entryPoints: [{ name: 'main', path: userCodePath }]
+    };
+}
+exports.createTestApp = createTestApp;