public async Task Create_should_create_events_and_update_state() { var command = MakeCreateCommand(); var result = await sut.ExecuteAsync(CreateRuleCommand(command)); result.ShouldBeEquivalent(sut.Snapshot); Assert.Equal(AppId, sut.Snapshot.AppId.Id); Assert.Same(command.Trigger, sut.Snapshot.RuleDef.Trigger); Assert.Same(command.Action, sut.Snapshot.RuleDef.Action); LastEvents .ShouldHaveSameEvents( CreateRuleEvent(new RuleCreated { Trigger = command.Trigger, Action = command.Action }) ); }
private async Task <object?> PublishAsync(RuleCommand command) { var result = await sut.ExecuteAsync(CreateRuleCommand(command)); return(result.Value); }