test: добавлены unit-тесты для игровой логики

- Vitest + happy-dom для тестирования
- 17 тестов для Board, PathFinder, LineChecker:
  - Board: создание поля, генерация цветов, поиск пустых клеток
  - PathFinder: поиск пути на пустом поле, недоступность занятых клеток, отсутствие пути через стену, ортогональность
  - LineChecker: горизонтали, вертикали, диагонали, линии <5, линии 7, пересекающиеся линии

Refs: [GAM-10](/GAM/issues/GAM-10)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
aevgarik
2026-03-22 21:56:32 +03:00
parent 2bdab2972e
commit 4e89c60e34
4 changed files with 811 additions and 1 deletions

View File

@@ -9,7 +9,8 @@
"preview": "vite preview",
"typecheck": "vue-tsc --noEmit",
"lint": "eslint . --ext .vue,.ts,.tsx --fix",
"format": "prettier --write \"src/**/*.{ts,vue,css,json}\""
"format": "prettier --write \"src/**/*.{ts,vue,css,json}\"",
"test": "vitest run"
},
"dependencies": {
"vue": "^3.5.30"
@@ -19,12 +20,15 @@
"@typescript-eslint/eslint-plugin": "^8.57.1",
"@typescript-eslint/parser": "^8.57.1",
"@vitejs/plugin-vue": "^6.0.5",
"@vue/test-utils": "^2.4.6",
"@vue/tsconfig": "^0.9.0",
"eslint": "^10.1.0",
"eslint-plugin-vue": "^10.8.0",
"happy-dom": "^20.8.4",
"prettier": "^3.8.1",
"typescript": "~5.9.3",
"vite": "^8.0.1",
"vitest": "^4.1.0",
"vue-tsc": "^3.2.5"
}
}