test(windows): use pnpm.cmd in integration builds
This commit is contained in:
parent
522276c599
commit
3f654d1ae9
@ -17,10 +17,11 @@ const testRequire = createRequire(import.meta.url);
|
||||
const MCP_SERVER_MODULE = pathToFileURL(testRequire.resolve('@modelcontextprotocol/sdk/server/mcp.js')).href;
|
||||
const STDIO_SERVER_MODULE = pathToFileURL(testRequire.resolve('@modelcontextprotocol/sdk/server/stdio.js')).href;
|
||||
const ZOD_MODULE = pathToFileURL(path.join(process.cwd(), 'node_modules', 'zod', 'index.js')).href;
|
||||
const PNPM_COMMAND = process.platform === 'win32' ? 'pnpm.cmd' : 'pnpm';
|
||||
|
||||
async function ensureDistBuilt(): Promise<void> {
|
||||
await new Promise<void>((resolve, reject) => {
|
||||
execFile('pnpm', ['build'], { cwd: process.cwd(), env: process.env }, (error) => {
|
||||
execFile(PNPM_COMMAND, ['build'], { cwd: process.cwd(), env: process.env }, (error) => {
|
||||
if (error) {
|
||||
reject(error);
|
||||
return;
|
||||
|
||||
@ -12,6 +12,7 @@ const MCP_SERVER_MODULE = pathToFileURL(testRequire.resolve('@modelcontextprotoc
|
||||
const STDIO_SERVER_MODULE = pathToFileURL(testRequire.resolve('@modelcontextprotocol/sdk/server/stdio.js')).href;
|
||||
const ZOD_MODULE = pathToFileURL(testRequire.resolve('zod')).href;
|
||||
const describeDaemon = process.platform === 'win32' ? describe.skip : describe;
|
||||
const PNPM_COMMAND = process.platform === 'win32' ? 'pnpm.cmd' : 'pnpm';
|
||||
|
||||
async function readFileWithRetries(filePath: string, retries = 20, delayMs = 100): Promise<string> {
|
||||
let lastError: unknown;
|
||||
@ -34,7 +35,7 @@ async function ensureDistBuilt(): Promise<void> {
|
||||
await fs.access(CLI_ENTRY);
|
||||
} catch {
|
||||
await new Promise<void>((resolve, reject) => {
|
||||
execFile('pnpm', ['build'], { cwd: process.cwd(), env: process.env }, (error) => {
|
||||
execFile(PNPM_COMMAND, ['build'], { cwd: process.cwd(), env: process.env }, (error) => {
|
||||
if (error) {
|
||||
reject(error);
|
||||
return;
|
||||
|
||||
@ -7,13 +7,14 @@ import { fileURLToPath } from 'node:url';
|
||||
import { afterAll, beforeAll, describe, expect, it } from 'vitest';
|
||||
|
||||
const CLI_ENTRY = fileURLToPath(new URL('../dist/cli.js', import.meta.url));
|
||||
const PNPM_COMMAND = process.platform === 'win32' ? 'pnpm.cmd' : 'pnpm';
|
||||
|
||||
async function ensureDistBuilt(): Promise<void> {
|
||||
try {
|
||||
await fs.access(CLI_ENTRY);
|
||||
} catch {
|
||||
await new Promise<void>((resolve, reject) => {
|
||||
execFile('pnpm', ['build'], { cwd: process.cwd(), env: process.env }, (error) => {
|
||||
execFile(PNPM_COMMAND, ['build'], { cwd: process.cwd(), env: process.env }, (error) => {
|
||||
if (error) {
|
||||
reject(error);
|
||||
return;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user