summaryrefslogtreecommitdiff
path: root/src/LivingVillage.Desktop.Tests
diff options
context:
space:
mode:
Diffstat (limited to 'src/LivingVillage.Desktop.Tests')
-rw-r--r--src/LivingVillage.Desktop.Tests/PrototypeTests.fs27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/LivingVillage.Desktop.Tests/PrototypeTests.fs b/src/LivingVillage.Desktop.Tests/PrototypeTests.fs
index ab7ae1a..f1f4aed 100644
--- a/src/LivingVillage.Desktop.Tests/PrototypeTests.fs
+++ b/src/LivingVillage.Desktop.Tests/PrototypeTests.fs
@@ -203,6 +203,33 @@ type PrototypeTests () =
Assert.IsTrue(first.Tiles |> List.exists (fun tile -> tile.Kind = (VillageArt.StonePaving)))
[<TestMethod>]
+ member _.CornerStatusShowsDayMoneyAndEnergyFromRealData () =
+ let world = Sim.initialWorldN 42UL 0
+ let lines = M5Interaction.cornerStatusLines world
+ Assert.AreEqual<int>(2, lines.Length)
+ Assert.IsTrue(lines.[0].StartsWith("天数 "), sprintf "day line: %s" lines.[0])
+ Assert.IsTrue(lines.[1].StartsWith("金钱 "), sprintf "money line: %s" lines.[1])
+ Assert.IsTrue(lines.[1].Contains("精力"))
+
+ let nextDay = { world with Tick = world.Tick + Sim.ticksPerDay }
+ Assert.AreNotEqual<string>(lines.[0], M5Interaction.cornerStatusLines nextDay |> List.item 0)
+
+ let richWorld =
+ { world with
+ Avatar =
+ { world.Avatar with
+ Mind =
+ { world.Avatar.Mind with
+ Needs = { world.Avatar.Mind.Needs with Money = 88.0f; Energy = 76.0f } } } }
+ let richLines = M5Interaction.cornerStatusLines richWorld
+ Assert.IsTrue(richLines.[1].Contains("88"), sprintf "money value missing: %s" richLines.[1])
+ Assert.IsTrue(richLines.[1].Contains("76"), sprintf "energy value missing: %s" richLines.[1])
+
+ Assert.IsTrue(ChineseText.requiredUiLabels |> List.contains "天数")
+ Assert.IsTrue(ChineseText.requiredUiLabels |> List.contains "金钱")
+ Assert.IsTrue(ChineseText.requiredUiLabels |> List.contains "精力")
+
+ [<TestMethod>]
member _.TitleScreenLayoutIsDeterministicAndLayered () =
let first = TitleScreen.layout 1280 720
let second = TitleScreen.layout 1280 720