Files
whalehunting/package.json
Thomas Richter b52cdb0685 Add comprehensive test suite with Vitest and Playwright
**Unit Tests (Vitest):**
- Test game logic: inventory management, barrel calculations
- Test whale hunting mechanics: fuel consumption, oil rewards, health system
- Test mobile detection patterns
- Test crosshair bounds and scene transitions
- 21 unit tests covering core game logic
- Fast execution with jsdom environment

**E2E Tests (Playwright):**
- Test complete game flows from intro to hunting
- Test scene navigation and transitions
- Test whale hunting interaction
- Test mobile compatibility and touch interactions
- Test desktop scaling on various viewports
- Run on both desktop (Chrome) and mobile (iPhone 12) configurations

**Test Scripts:**
- npm test - Run unit tests
- npm run test:ui - Run unit tests with UI
- npm run test:coverage - Run with coverage report
- npm run test:e2e - Run E2E tests
- npm run test:e2e:ui - Run E2E tests with UI
- npm run test:all - Run all tests

**Configuration:**
- Vitest configured with jsdom for fast unit testing
- Playwright configured with automatic dev server startup
- Test coverage reporting enabled
- Separate unit and E2E test directories

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-18 06:48:02 +01:00

36 lines
834 B
JSON

{
"name": "whalehunting-game",
"version": "1.0.0",
"description": "A Monkey Island-style point-and-click adventure game about 18th century whaling",
"main": "src/main.js",
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview",
"test": "vitest",
"test:ui": "vitest --ui",
"test:coverage": "vitest --coverage",
"test:e2e": "playwright test",
"test:e2e:ui": "playwright test --ui",
"test:all": "npm run test && npm run test:e2e"
},
"keywords": [
"game",
"phaser",
"adventure",
"point-and-click"
],
"author": "",
"license": "MIT",
"dependencies": {
"phaser": "^3.80.1"
},
"devDependencies": {
"@playwright/test": "^1.57.0",
"@vitest/ui": "^4.0.16",
"jsdom": "^27.3.0",
"vite": "^5.0.0",
"vitest": "^4.0.16"
}
}