Skip to content

Add unit tests for RNG, combat, quest, autotile, and world generation; fix CI - #28

Merged
phaax merged 1 commit into
mainfrom
claude/analyze-test-coverage-NyIMW
Mar 31, 2026
Merged

Add unit tests for RNG, combat, quest, autotile, and world generation; fix CI#28
phaax merged 1 commit into
mainfrom
claude/analyze-test-coverage-NyIMW

Conversation

@phaax

@phaax phaax commented Mar 31, 2026

Copy link
Copy Markdown
Owner
  • tests/unit/rng.test.ts: 30 tests covering all RNG methods (int, float, pick,
    weightedPick, shuffle, roll, chance, word) including determinism and distribution
  • tests/unit/combat.test.ts: 34 tests covering spawnMonster, spawnEncounter,
    initCombat, playerAttack, playerFlee, applyRewards, xpToLevel, startPlayerTurn,
    and getActiveMonster
  • tests/unit/quest.test.ts: 34 tests covering onMonsterKilled, onItemPickedUp,
    onLocationVisited, acceptQuest, turnInQuest, quest list helpers, and
    checkGoalProgress
  • tests/unit/autotile.test.ts: 32 tests exhaustively covering all 16 bitmask
    cases for computeWallChar and all wall tile variants for isWallTile
  • tests/unit/worldgen.test.ts: 24 tests covering updateFog, clearFogAroundLocation,
    getBiomeAt, getLocationAt, and generateWorld (structure, determinism, fog init)
  • .github/workflows/ci.yml: add 'Run unit tests' step before Playwright so Vitest
    tests are enforced on every PR

Total: 213 unit tests passing (up from 55).

https://claude.ai/code/session_01LFXi894k1v25aMpme8xQqq

…; fix CI

- tests/unit/rng.test.ts: 30 tests covering all RNG methods (int, float, pick,
  weightedPick, shuffle, roll, chance, word) including determinism and distribution
- tests/unit/combat.test.ts: 34 tests covering spawnMonster, spawnEncounter,
  initCombat, playerAttack, playerFlee, applyRewards, xpToLevel, startPlayerTurn,
  and getActiveMonster
- tests/unit/quest.test.ts: 34 tests covering onMonsterKilled, onItemPickedUp,
  onLocationVisited, acceptQuest, turnInQuest, quest list helpers, and
  checkGoalProgress
- tests/unit/autotile.test.ts: 32 tests exhaustively covering all 16 bitmask
  cases for computeWallChar and all wall tile variants for isWallTile
- tests/unit/worldgen.test.ts: 24 tests covering updateFog, clearFogAroundLocation,
  getBiomeAt, getLocationAt, and generateWorld (structure, determinism, fog init)
- .github/workflows/ci.yml: add 'Run unit tests' step before Playwright so Vitest
  tests are enforced on every PR

Total: 213 unit tests passing (up from 55).

https://claude.ai/code/session_01LFXi894k1v25aMpme8xQqq
@phaax
phaax merged commit 234d635 into main Mar 31, 2026
2 checks passed
@phaax
phaax deleted the claude/analyze-test-coverage-NyIMW branch March 31, 2026 19:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants