public void ResultModify_WhenCommandApplied_ValidModifiedLineItemAdded() { var result = new GubernatorialResult(); CreateGubernatorialResultCommand cmdCreate = DefaultCreateGubernatorialResultCommand(); result.Apply(cmdCreate); AddGubernatorialLineItemsCommand cmdLineItem = DefaultAddGubernatorialLineItemsCommand(2, cmdCreate.ApplyToResult, result.PollingCentre, result.ResultSender); result.Apply(cmdLineItem); ConfirmGubernatorialResultsCommand cmdConfirm = DefaultConfirmPresidentalResultsCommand(3, cmdLineItem.ApplyToResult, result.PollingCentre, result.ResultSender); result.Apply(cmdConfirm); ModifyGubernatorialResultsCommand cmd = DefaultModifyGubernatorialResultsCommand(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)); GubernatorialResultLineItem 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 Save(GubernatorialResult result) { using (var ctx = new VtsContext(_contextConnection.VtsConnectionString)) { ctx.UpdateGraph(result, map => map.OwnedCollection(n => n.LineItems)); ctx.SaveChanges(); } }
public GubernatorialResult GetByPollingCentre(PollingCentreRef pollingCentre) { using (var ctx = new VtsContext(_contextConnection.VtsConnectionString)) { GubernatorialResult results = CtxSetup(ctx.GubernatorialResults) .FirstOrDefault(n => n.PollingCentre.Id == pollingCentre.Id); return(results); } }
public GubernatorialResult GetById(Guid id) { using (var ctx = new VtsContext(_contextConnection.VtsConnectionString)) { GubernatorialResult results = CtxSetup(ctx.GubernatorialResults) .FirstOrDefault(n => n.Id == id); return(results); } }
public void ResultConfirm_WhenCommandApplied_ResultStatusConfirmed() { var result = new GubernatorialResult(); CreateGubernatorialResultCommand cmdCreate = DefaultCreateGubernatorialResultCommand(); result.Apply(cmdCreate); AddGubernatorialLineItemsCommand cmdLineItem = DefaultAddGubernatorialLineItemsCommand(2, cmdCreate.ApplyToResult, result.PollingCentre, result.ResultSender); result.Apply(cmdLineItem); ConfirmGubernatorialResultsCommand cmd = DefaultConfirmPresidentalResultsCommand(3, cmdLineItem.ApplyToResult, result.PollingCentre, result.ResultSender); //act result.Apply(cmd); //assert Assert.That(result.Status, Is.EqualTo(ResultStatus.Confirmed)); }
public void ResultCreation_WhenCommandApplied_ValidNewResult() { var result = new GubernatorialResult(); CreateGubernatorialResultCommand cmd = DefaultCreateGubernatorialResultCommand(); //act result.Apply(cmd); //assert Assert.That(result.Id, Is.Not.EqualTo(Guid.Empty)); Assert.That(result.Id, Is.EqualTo(cmd.ApplyToResult.Id)); Assert.That(result.Status, Is.EqualTo(ResultStatus.New)); Assert.That(result.ResultReference, Is.EqualTo(cmd.ResultReference)); Assert.That(result.PollingCentre, Is.EqualTo(cmd.OriginatingPollingCentre)); Assert.That(result.ResultSender, Is.EqualTo(cmd.CommandGeneratedByUser)); Assert.That(result.LineItems.Count(), Is.EqualTo(0)); }
public GubernatorialResult Confirm(GubernatorialResult result, ResultInfo originatingInfo) { CommandInfo commandInfo = new CommandInfo { CommandGeneratedByUser = originatingInfo.CommandGeneratedByUser, OriginatingPollingCentre = originatingInfo.OriginatingPollingCentre, }; ConfirmGubernatorialResultsCommand confirmGubernatorialResultsCommand = new ConfirmGubernatorialResultsCommand { CommandId = Guid.NewGuid(), CommandGeneratedByUser = commandInfo.CommandGeneratedByUser, OriginatingPollingCentre = commandInfo.OriginatingPollingCentre, ApplyToResult = result.GetResultRef(), CommandExecutionOrder = result.LastResultCommandExecutedOrder + 1, }; result.Apply(confirmGubernatorialResultsCommand); return(result); }
public void ResultAddLineItem_WhenCommandApplied_ValidLineItemAdded() { var result = new GubernatorialResult(); CreateGubernatorialResultCommand cmdCreate = DefaultCreateGubernatorialResultCommand(); result.Apply(cmdCreate); AddGubernatorialLineItemsCommand cmd = DefaultAddGubernatorialLineItemsCommand(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)); GubernatorialResultLineItem lineItem = result.LineItems[0]; Assert.That(lineItem.Candidate, Is.EqualTo(cmd.ResultDetail[0].Candidate)); Assert.That(lineItem.ResultCount, Is.EqualTo(cmd.ResultDetail[0].Result)); }
public GubernatorialResult Modify(GubernatorialResult result, ResultInfo originatingInfo, List <ResultDetail> resultDetails) { CommandInfo commandInfo = new CommandInfo { CommandGeneratedByUser = originatingInfo.CommandGeneratedByUser, OriginatingPollingCentre = originatingInfo.OriginatingPollingCentre, }; var command = new ModifyGubernatorialResultsCommand { CommandId = Guid.NewGuid(), CommandGeneratedByUser = commandInfo.CommandGeneratedByUser, OriginatingPollingCentre = commandInfo.OriginatingPollingCentre, ApplyToResult = result.GetResultRef(), CommandExecutionOrder = result.LastResultCommandExecutedOrder + 1, ResultDetail = resultDetails, }; result.Apply(command); return(result); }
public GubernatorialResult Create(ResultInfo originatingInfo, string documentReference) { CommandInfo commandInfo = new CommandInfo { CommandGeneratedByUser = originatingInfo.CommandGeneratedByUser, OriginatingPollingCentre = originatingInfo.OriginatingPollingCentre, ResultReference = documentReference }; CreateGubernatorialResultCommand createGubernatorialResultCommand = new CreateGubernatorialResultCommand { CommandId = Guid.NewGuid(), CommandGeneratedByUser = commandInfo.CommandGeneratedByUser, OriginatingPollingCentre = commandInfo.OriginatingPollingCentre, ApplyToResult = new ResultRef(Guid.NewGuid(), ResultType.Gubernatorial), ResultReference = commandInfo.ResultReference, ResultDate = DateTime.Now, CommandExecutionOrder = 1 }; var result = new GubernatorialResult(); result.Apply(createGubernatorialResultCommand); return(result); }