chore: add tests for data loading

This commit is contained in:
2026-04-15 13:27:12 +08:00
parent 726856af35
commit 33095d5226
6 changed files with 216 additions and 2 deletions
@@ -0,0 +1,10 @@
type EffectDesertTable = readonly {
readonly id: string;
readonly name: string;
readonly description: string;
}[];
export type EffectDesert = EffectDesertTable[number];
declare const data: EffectDesertTable;
export default data;
@@ -1,7 +1,11 @@
import type { EnemyDesert } from './enemyDesert.csv';
type EncounterDesertTable = readonly {
readonly type: "minion" | "elite" | "event" | "shop" | "camp" | "curio";
readonly name: string;
readonly description: string;
readonly enemies: readonly [EnemyDesert, number];
readonly dialogue: string;
}[];
export type EncounterDesert = EncounterDesertTable[number];
@@ -0,0 +1,11 @@
type EnemyDesertTable = readonly {
readonly id: string;
readonly initHp: number;
readonly initBuffs: readonly [string, number];
readonly initialIntent: string;
}[];
export type EnemyDesert = EnemyDesertTable[number];
declare const data: EnemyDesertTable;
export default data;
@@ -0,0 +1,15 @@
import type { EnemyDesert } from './enemyDesert.csv';
import type { EffectDesert } from './effectDesert.csv';
type EnemyIntentDesertTable = readonly {
readonly enemy: EnemyDesert;
readonly intent: string;
readonly nextIntents: readonly string[];
readonly brokenIntent: readonly string[];
readonly effects: readonly ["self" | "opponent", EffectDesert, number];
}[];
export type EnemyIntentDesert = EnemyIntentDesertTable[number];
declare const data: EnemyIntentDesertTable;
export default data;
@@ -1,6 +1,16 @@
import heroItemFighter1Csv from './heroItemFighter1.csv';
import encounterDesertCsv from './encounterDesert.csv';
import enemyDesertCsv from './enemyDesert.csv';
import enemyIntentDesertCsv from './enemyIntentDesert.csv';
import effectDesertCsv from './effectDesert.csv';
export const heroItemFighter1Data = heroItemFighter1Csv;
export const encounterDesertData = encounterDesertCsv;
export const enemyDesertData = enemyDesertCsv;
export const enemyIntentDesertData = enemyIntentDesertCsv;
export const effectDesertData = effectDesertCsv;
export { default as encounterDesertCsv, type EncounterDesert } from './encounterDesert.csv';
export { default as enemyDesertCsv, type EnemyDesert } from './enemyDesert.csv';
export { default as enemyIntentDesertCsv, type EnemyIntentDesert } from './enemyIntentDesert.csv';
export { default as effectDesertCsv, type EffectDesert } from './effectDesert.csv';