refactor the skill system to adhere to the lore handbook

This commit is contained in:
2026-08-15 11:13:15 +02:00
parent 063e94f6eb
commit 9e5c3277bf
70 changed files with 2271 additions and 445 deletions
@@ -5,8 +5,9 @@ namespace NightclubArcadia.Skills.Tests
{
public class DcBandTests
{
[TestCase("standard", 11)]
[TestCase("STANDARD", 11)]
[TestCase("routine", 11)]
[TestCase("ROUTINE", 11)]
[TestCase("trivial", 8)]
[TestCase("13", 13)]
[TestCase("-3", -3)]
public void TryParse_AcceptsBandNamesAndIntegers(string input, int expected)
@@ -15,9 +16,18 @@ namespace NightclubArcadia.Skills.Tests
Assert.AreEqual(expected, dc);
}
[Test]
public void TryParse_TrivialIsEight_NotFive()
{
Assert.IsTrue(DcBands.TryParse("trivial", out var dc));
Assert.AreEqual(8, dc);
Assert.AreEqual(8, (int)DcBand.Trivial);
}
[TestCase("banana")]
[TestCase("")]
[TestCase(null)]
[TestCase("standard")]
public void TryParse_RejectsGarbage(string input)
{
Assert.IsFalse(DcBands.TryParse(input, out _));