feat: include test directories in tsconfig files, disable no-explicit-any for test files, and document testing policy relaxations.

This commit is contained in:
2026-01-07 18:02:02 +00:00
parent 73c186fa74
commit 542a65c2a9
6 changed files with 18 additions and 8 deletions
+2 -2
View File
@@ -3,7 +3,6 @@
"compilerOptions": {
"outDir": "dist",
"composite": true,
"rootDir": "src",
"baseUrl": ".",
"paths": {
"@sammo-ts/common": [
@@ -27,7 +26,8 @@
}
},
"include": [
"src"
"src",
"test"
],
"references": [
{
+2 -2
View File
@@ -3,10 +3,10 @@
"compilerOptions": {
"outDir": "dist",
"composite": true,
"rootDir": "src"
},
"include": [
"src"
"src",
"test"
],
"references": [
{
+2 -2
View File
@@ -3,10 +3,10 @@
"compilerOptions": {
"outDir": "dist",
"composite": true,
"rootDir": "src"
},
"include": [
"src"
"src",
"test"
],
"references": [
{
+4
View File
@@ -55,6 +55,10 @@ Goal: ensure scenario parsing and DB application are correct.
- Unit tests: fast, wide coverage.
- Integration tests: focus on real DB/Redis behavior.
- Smoke tests: minimal coverage of turn flow/build/scenario loading.
- Test-specific Rule Relaxations:
- To simplify mocking and complex state preparation, the use of `any` type is allowed in test files.
- Type casting tricks like `as unknown as YourType` are also permitted in test code for convenience.
- However, test code must still be covered by TypeScript type checking to ensure API consistency and prevent regressions.
## MockDB Conclusion
+6
View File
@@ -76,6 +76,12 @@ export default tseslint.config(
'@typescript-eslint/no-empty-object-type': 'off',
},
},
{
files: ['**/test/**/*.ts', '**/*.test.ts', '**/*.spec.ts'],
rules: {
'@typescript-eslint/no-explicit-any': 'off',
},
},
{
files: ['**/*.js', '**/*.mjs', '**/*.cjs'],
rules: {
+2 -2
View File
@@ -19,10 +19,10 @@
"useUnknownInCatchVariables": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"rootDir": "src"
},
"include": [
"src"
"src",
"test"
],
"references": [
{