Files
ccs/tests
kaitranntt 2dc3d4bb26 fix: move npm-specific integration tests to npm/ directory
- Move integration/special-commands.test.js to npm/ since it tests bin/ccs.js
- This test was incorrectly categorized as cross-installation integration
- It specifically tests npm package functionality (bin/ccs.js)
- Remove empty integration/ directory and update package.json
- Final test counts: 37 native + 39 npm + 7 unit = 83 total tests

Clean final structure:
- native/     - Native installation tests only
- npm/        - npm package tests (including integration tests)
- shared/     - Shared utilities, fixtures, and unit tests
2025-11-05 11:16:16 -05:00
..

CCS Test Suite

Organization

  • native/ - Traditional installation (curl|bash, irm|iex)
    • unix/ - Unix/Linux/macOS native tests
    • windows/ - Windows PowerShell tests
  • npm/ - npm package tests
    • postinstall.test.js - Postinstall behavior tests
    • cli.test.js - CLI argument parsing tests
    • cross-platform.test.js - Cross-platform compatibility tests
  • unit/ - Node.js unit tests
  • integration/ - Integration tests
  • shared/ - Shared utilities and test data

Running Tests

  • All tests: npm test
  • npm package tests only: npm run test:npm
  • Native installation tests only: npm run test:native
  • Unit tests only: npm run test:unit
  • Integration tests only: npm run test:integration
  • Master test suite (backward compatible): npm run test:edge-cases

Test Structure

Native Tests

Test the traditional installation methods where CCS is installed via:

  • Unix/Linux/macOS: curl | bash
  • Windows: irm | iex (PowerShell)

These tests use bash/PowerShell scripts and test the lib/ccs and lib/ccs.ps1 files.

npm Tests

Test the npm package installation where CCS is installed via:

  • npm: npm install -g @kaitranntt/ccs

These tests use Node.js/mocha framework and test the bin/ccs.js file.

Shared Utilities

Common test code, data, and helper functions are stored in shared/ to avoid duplication across test suites.