mirror of
https://github.com/tiennm99/ccs.git
synced 2026-07-16 10:16:49 +00:00
- 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
CCS Test Suite
Organization
native/- Traditional installation (curl|bash, irm|iex)unix/- Unix/Linux/macOS native testswindows/- Windows PowerShell tests
npm/- npm package testspostinstall.test.js- Postinstall behavior testscli.test.js- CLI argument parsing testscross-platform.test.js- Cross-platform compatibility tests
unit/- Node.js unit testsintegration/- Integration testsshared/- 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.