feat(inventory): add GrantSource enum + message lookup
Introduces GrantSource (17 values, DB-persisted) and GrantSourceMessages.For() for the item-acquire-history feature. Values 1/2 mirror prod captures; coverage test verifies every enum value has a non-empty message. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
26
SVSim.UnitTests/Services/Inventory/InventoryHistoryTests.cs
Normal file
26
SVSim.UnitTests/Services/Inventory/InventoryHistoryTests.cs
Normal file
@@ -0,0 +1,26 @@
|
||||
using SVSim.Database.Services.Inventory;
|
||||
|
||||
namespace SVSim.UnitTests.Services.Inventory;
|
||||
|
||||
public class InventoryHistoryTests
|
||||
{
|
||||
[Test]
|
||||
public void GrantSourceMessages_returns_known_messages_for_seeded_sources()
|
||||
{
|
||||
Assert.That(GrantSourceMessages.For(GrantSource.DailyBonus), Is.EqualTo("Daily Bonus"));
|
||||
Assert.That(GrantSourceMessages.For(GrantSource.PackOpen), Is.EqualTo("From buying card packs"));
|
||||
Assert.That(GrantSourceMessages.For(GrantSource.CardCosmeticCascade), Is.EqualTo("Card cosmetic"));
|
||||
Assert.That(GrantSourceMessages.For(GrantSource.Unknown), Is.EqualTo("Unknown"));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GrantSourceMessages_covers_every_enum_value()
|
||||
{
|
||||
foreach (GrantSource source in Enum.GetValues<GrantSource>())
|
||||
{
|
||||
var message = GrantSourceMessages.For(source);
|
||||
Assert.That(message, Is.Not.Null.And.Not.Empty,
|
||||
$"GrantSource.{source} has no message defined.");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user