Spawnables now contain configuration for CollectAction outcomes

This commit is contained in:
hz
2025-06-08 21:46:01 -05:00
parent 22eb487aaa
commit 2ed8aaffc6
6 changed files with 42 additions and 4 deletions
+11 -2
View File
@@ -17,7 +17,11 @@ public class SpawnableControllerTests
public async Task Create_ReturnsOk()
{
var svc = new Mock<SpawnableService>(config);
svc.Setup(s => s.CreateAsync(It.Is<Spawnable>(sp => sp.CollectAction == "gather")))
svc.Setup(s => s.CreateAsync(It.Is<Spawnable>(sp =>
sp.CollectAction == "gather" &&
sp.CollectResults.Count == 2 &&
sp.CollectResults[0].Result == "resource" &&
sp.CollectResults[0].SuccessRate == 75)))
.Returns(Task.CompletedTask).Verifiable();
var controller = new SpawnableController(svc.Object);
@@ -25,7 +29,12 @@ public class SpawnableControllerTests
{
Name = "item",
SpawnRate = 50,
CollectAction = "gather"
CollectAction = "gather",
CollectResults = new List<CollectOutcome>
{
new() { Result = "resource", SuccessRate = 75 },
new() { Result = "nothing", SuccessRate = 25 }
}
});
Assert.IsType<OkObjectResult>(result);