Files
goon-game/app/src/test/java/com/projectsacrifice/game/GameStringsTest.java
T

44 lines
2.1 KiB
Java

package com.projectsacrifice.game;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotEquals;
import org.junit.Test;
public final class GameStringsTest {
@Test
public void missingOrUnknownLanguageSafelyFallsBackToEnglish() {
assertEquals(GameLanguage.EN, GameLanguage.fromCode(null));
assertEquals(GameLanguage.EN, GameLanguage.fromCode("de"));
GameStrings strings = GameStrings.forLanguage(GameLanguage.fromCode("de"));
assertEquals("Settings", strings.settingsButton());
assertEquals("The Volunteer", strings.levelTitle(1));
}
@Test
public void russianPackLocalizesTheCompletePlayerFacingContract() {
GameStrings english = GameStrings.forLanguage(GameLanguage.EN);
GameStrings russian = GameStrings.forLanguage(GameLanguage.RU);
assertEquals("Настройки", russian.settingsButton());
assertEquals("Размер управления", russian.controlSizeSetting());
assertEquals("Русский", russian.languageName());
assertEquals("Рыцарь-доброволец", russian.levelTitle(1));
assertEquals("Последнее шествие", russian.levelTitle(10));
assertEquals("Добровольцы 2 Время 00:07", russian.hudStats(2, 7_000L));
assertEquals("✓ 2 добровольца · 00:07", russian.levelBestStats(2, 7_000L));
assertEquals("★ 2 / 3 добровольца", russian.completionDeaths(true, 2, 3));
assertEquals("Смерть — это инструмент", russian.tutorialWelcomeTitle());
assertFalse(russian.tutorialSacrificeBody().trim().isEmpty());
for (int level = 1; level <= 10; level++) {
assertFalse(russian.levelTitle(level).trim().isEmpty());
assertFalse(russian.levelHint(level).trim().isEmpty());
assertNotEquals(english.levelTitle(level), russian.levelTitle(level));
assertNotEquals(english.levelHint(level), russian.levelHint(level));
}
}
}