fix: close out remaining German player-facing text across web and API tests
Repo-wide grep sweep (apps/web/src, apps/api/src) for leftover German content strings missed by Tasks 1-9, mostly in spec fixtures/assertions that mirror already-translated seed content (monster/item names, POI titles and action labels, location names/descriptions) plus a few real source-file gaps: - inventory-detail-panel.component.ts: STAT_LABELS (Waffenschaden, Angriff, Leben, Rüstung) were never translated by Task 6; now match the identical English labels already used in inventory-page.component.html. - app-shell.component.html: aria-label="Spielinhalt" -> "Game content" (this file was outside every prior task's file list). - location-interaction-panel.component.spec.ts: dead NPC-quote fixture translated to match the real wounded-scout POI text. Code comments referencing German source-spec section titles or not-yet-seeded faction names, and inline calculation-documentation comments, are left as-is per the source spec's scope (dev-facing comments may stay German). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ACkMEDYiwtcfchqKkiUJNX
This commit is contained in:
@@ -158,7 +158,7 @@ function createState(overrides: Partial<State> = {}): State {
|
||||
{
|
||||
id: BANDIT_BLADE,
|
||||
key: 'bandit-blade',
|
||||
name: 'Räuberklinge',
|
||||
name: 'Bandit Blade',
|
||||
type: ItemType.EQUIPMENT,
|
||||
rarity: ItemRarity.COMMON,
|
||||
iconPath: '/images/items/bandit-blade.png',
|
||||
@@ -239,7 +239,7 @@ describe('CombatRewardService', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('Aschenratte', () => {
|
||||
describe('Ash Rat', () => {
|
||||
it('grants a silver roll inside 4-7, persisted on the character', async () => {
|
||||
const state = createState();
|
||||
|
||||
@@ -266,7 +266,7 @@ describe('CombatRewardService', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('Straßenräuber', () => {
|
||||
describe('Road Bandit', () => {
|
||||
const banditCombat = combat({ monsterDefinitionId: ROAD_BANDIT_ID });
|
||||
|
||||
it('grants a silver roll inside 9-15', async () => {
|
||||
@@ -281,7 +281,7 @@ describe('CombatRewardService', () => {
|
||||
expect(reward.silver).toBe(9);
|
||||
});
|
||||
|
||||
it('persists a dropped Räuberklinge as a CharacterItem and references it in the reward', async () => {
|
||||
it('persists a dropped Bandit Blade as a CharacterItem and references it in the reward', async () => {
|
||||
const state = createState();
|
||||
|
||||
const reward = await service(
|
||||
@@ -301,7 +301,7 @@ describe('CombatRewardService', () => {
|
||||
characterItemId: state.characterItems[0].id,
|
||||
item: {
|
||||
key: 'bandit-blade',
|
||||
name: 'Räuberklinge',
|
||||
name: 'Bandit Blade',
|
||||
rarity: ItemRarity.COMMON,
|
||||
iconPath: '/images/items/bandit-blade.png',
|
||||
},
|
||||
@@ -311,7 +311,7 @@ describe('CombatRewardService', () => {
|
||||
expect(state.combatRewardItems).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('reports no items when the Räuberklinge does not drop', async () => {
|
||||
it('reports no items when the Bandit Blade does not drop', async () => {
|
||||
const state = createState();
|
||||
|
||||
const reward = await service(state, fakeLoot()).grantVictoryRewards(
|
||||
@@ -450,7 +450,7 @@ describe('CombatRewardService', () => {
|
||||
{
|
||||
id: BANDIT_BLADE,
|
||||
key: 'bandit-blade',
|
||||
name: 'Räuberklinge',
|
||||
name: 'Bandit Blade',
|
||||
type: ItemType.EQUIPMENT,
|
||||
rarity: ItemRarity.COMMON,
|
||||
iconPath: '/images/items/bandit-blade.png',
|
||||
@@ -458,7 +458,7 @@ describe('CombatRewardService', () => {
|
||||
{
|
||||
id: BANDIT_HOOD,
|
||||
key: 'bandit-hood',
|
||||
name: 'Räuberkapuze',
|
||||
name: 'Bandit Hood',
|
||||
type: ItemType.EQUIPMENT,
|
||||
rarity: ItemRarity.COMMON,
|
||||
iconPath: '/images/items/bandit-hood.png',
|
||||
|
||||
Reference in New Issue
Block a user