diff --git a/README.md b/README.md index 1de1230fb..4dd404cf4 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ [![Socket Badge](https://socket.dev/api/badge/npm/package/socket)](https://socket.dev/npm/package/socket) [![CI](https://github.com/SocketDev/socket-cli/actions/workflows/ci.yml/badge.svg)](https://github.com/SocketDev/socket-cli/actions/workflows/ci.yml) -![Test Coverage](https://img.shields.io/badge/test--coverage-90%25-brightgreen) -![Type Coverage](https://img.shields.io/badge/type--coverage-95%25-brightgreen) +![Code Coverage](https://img.shields.io/badge/code--coverage-37.17%25-yellow) +![Type Coverage](https://img.shields.io/badge/type--coverage-98.16%25-brightgreen) [![Follow @SocketSecurity](https://img.shields.io/twitter/follow/SocketSecurity?style=social)](https://twitter.com/SocketSecurity) diff --git a/packages/cli/package.json b/packages/cli/package.json index ba55ef043..5e10f0e0b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -56,7 +56,7 @@ "test:prepare": "dotenvx -q run -f .env.test -- pnpm build && del-cli 'test/**/node_modules'", "test:unit": "dotenvx -q run -f .env.test -- vitest run", "test:unit:update": "dotenvx -q run -f .env.test -- vitest run --update", - "test:unit:coverage": "dotenvx -q run -f .env.test -- vitest run --coverage", + "test:unit:coverage": "NODE_OPTIONS='--max-old-space-size=8192' dotenvx -q run -f .env.test -- vitest run --coverage", "test:validate": "node --import=./scripts/load.mjs scripts/validate-tests.mjs", "test:wrapper": "node --import=./scripts/load.mjs scripts/test-wrapper.mjs", "test-ci": "run-s test:*", diff --git a/packages/cli/scripts/cover.mjs b/packages/cli/scripts/cover.mjs index 93a6dc6c5..66bbff6d6 100644 --- a/packages/cli/scripts/cover.mjs +++ b/packages/cli/scripts/cover.mjs @@ -20,12 +20,15 @@ import { WIN32 } from '@socketsecurity/lib/constants/platform' import { getDefaultLogger } from '@socketsecurity/lib/logger' import { spawn } from '@socketsecurity/lib/spawn' +const logger = getDefaultLogger() + /** * Print a header message. */ function printHeader(message) { - const logger = getDefaultLogger() - logger.error('\n═══════════════════════════════════════════════════════') + logger.error( + '\n═══════════════════════════════════════════════════════', + ) logger.error(` ${message}`) logger.error('═══════════════════════════════════════════════════════\n') } diff --git a/packages/cli/vitest.config.mts b/packages/cli/vitest.config.mts index 524cf3452..bfa74c248 100644 --- a/packages/cli/vitest.config.mts +++ b/packages/cli/vitest.config.mts @@ -89,6 +89,11 @@ export default defineConfig({ coverage: { provider: 'v8', reporter: ['text', 'json', 'html', 'lcov', 'clover'], + // Prevent v8 coverage segfaults by processing in smaller chunks. + processingConcurrency: 1, + // Use less memory-intensive options. + reportOnFailure: true, + reportsDirectory: './coverage', exclude: [ '**/*.config.*', '**/node_modules/**',