public void ResultModify_WhenCommandApplied_ValidModifiedLineItemAdded() { var result = new ReferendumResult(); CreateReferendumResultCommand cmdCreate = DefaultCreateReferendumResultCommand(); result.Apply(cmdCreate); AddReferendumLineItemsCommand cmdLineItem = DefaultAddReferendumLineItemsCommand(2, cmdCreate.ApplyToResult, result.PollingCentre, result.ResultSender); result.Apply(cmdLineItem); ConfirmReferendumResultsCommand cmdConfirm = DefaultConfirmPresidentalResultsCommand(3, cmdLineItem.ApplyToResult, result.PollingCentre, result.ResultSender); result.Apply(cmdConfirm); ModifyReferendumResultsCommand cmd = DefaultModifyReferendumResultsCommand(4, cmdConfirm.ApplyToResult, result.PollingCentre, result.ResultSender); //act result.Apply(cmd); //assert Assert.That(result.LineItems.Count(), Is.EqualTo(2)); Assert.That(result.Id, Is.EqualTo(cmd.ApplyToResult.Id)); Assert.That(result.Status, Is.EqualTo(ResultStatus.Modified)); ReferendumResultLineItem lineItem = result.LineItems[1]; Assert.That(lineItem.Candidate, Is.EqualTo(cmd.ResultDetail[0].Candidate)); Assert.That(lineItem.ResultCount, Is.EqualTo(cmd.ResultDetail[0].Result)); }
public void ResultAddLineItem_WhenCommandApplied_ValidLineItemAdded() { var result = new ReferendumResult(); CreateReferendumResultCommand cmdCreate = DefaultCreateReferendumResultCommand(); result.Apply(cmdCreate); AddReferendumLineItemsCommand cmd = DefaultAddReferendumLineItemsCommand(2, cmdCreate.ApplyToResult, result.PollingCentre, result.ResultSender); //act result.Apply(cmd); //assert Assert.That(result.LineItems.Count(), Is.EqualTo(1)); Assert.That(result.Id, Is.EqualTo(cmd.ApplyToResult.Id)); Assert.That(result.Status, Is.EqualTo(ResultStatus.New)); ReferendumResultLineItem lineItem = result.LineItems[0]; Assert.That(lineItem.Candidate, Is.EqualTo(cmd.ResultDetail[0].Candidate)); Assert.That(lineItem.ResultCount, Is.EqualTo(cmd.ResultDetail[0].Result)); }