Exemplo n.º 1
0
        public void ResultModify_WhenCommandApplied_ValidModifiedLineItemAdded()
        {
            var result = new WomenRepResult();
            CreateWomenRepResultCommand cmdCreate = DefaultCreateWomenRepResultCommand();

            result.Apply(cmdCreate);
            AddWomenRepLineItemsCommand cmdLineItem = DefaultAddWomenRepLineItemsCommand(2, cmdCreate.ApplyToResult, result.PollingCentre, result.ResultSender);

            result.Apply(cmdLineItem);
            ConfirmWomenRepResultsCommand cmdConfirm = DefaultConfirmPresidentalResultsCommand(3, cmdLineItem.ApplyToResult, result.PollingCentre, result.ResultSender);

            result.Apply(cmdConfirm);
            ModifyWomenRepResultsCommand cmd = DefaultModifyWomenRepResultsCommand(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));
            WomenRepResultLineItem 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(WomenRepResult result)
 {
     using (var ctx = new VtsContext(_contextConnection.VtsConnectionString))
     {
         ctx.UpdateGraph(result, map => map.OwnedCollection(n => n.LineItems));
         ctx.SaveChanges();
     }
 }
        public WomenRepResult GetByPollingCentre(PollingCentreRef pollingCentre)
        {
            using (var ctx = new VtsContext(_contextConnection.VtsConnectionString))
            {
                WomenRepResult results = CtxSetup(ctx.WomenRepResults)
                                         .FirstOrDefault(n => n.PollingCentre.Id == pollingCentre.Id);

                return(results);
            }
        }
        public WomenRepResult GetById(Guid id)
        {
            using (var ctx = new VtsContext(_contextConnection.VtsConnectionString))
            {
                WomenRepResult results = CtxSetup(ctx.WomenRepResults)
                                         .FirstOrDefault(n => n.Id == id);

                return(results);
            }
        }
Exemplo n.º 5
0
        public void ResultConfirm_WhenCommandApplied_ResultStatusConfirmed()
        {
            var result = new WomenRepResult();
            CreateWomenRepResultCommand cmdCreate = DefaultCreateWomenRepResultCommand();

            result.Apply(cmdCreate);
            AddWomenRepLineItemsCommand cmdLineItem = DefaultAddWomenRepLineItemsCommand(2, cmdCreate.ApplyToResult, result.PollingCentre, result.ResultSender);

            result.Apply(cmdLineItem);
            ConfirmWomenRepResultsCommand cmd = DefaultConfirmPresidentalResultsCommand(3, cmdLineItem.ApplyToResult, result.PollingCentre, result.ResultSender);

            //act
            result.Apply(cmd);
            //assert
            Assert.That(result.Status, Is.EqualTo(ResultStatus.Confirmed));
        }
Exemplo n.º 6
0
        public void ResultCreation_WhenCommandApplied_ValidNewResult()
        {
            var result = new WomenRepResult();
            CreateWomenRepResultCommand cmd = DefaultCreateWomenRepResultCommand();

            //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));
        }
Exemplo n.º 7
0
        public void ResultAddLineItem_WhenCommandApplied_ValidLineItemAdded()
        {
            var result = new WomenRepResult();
            CreateWomenRepResultCommand cmdCreate = DefaultCreateWomenRepResultCommand();

            result.Apply(cmdCreate);
            AddWomenRepLineItemsCommand cmd = DefaultAddWomenRepLineItemsCommand(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));
            WomenRepResultLineItem lineItem = result.LineItems[0];

            Assert.That(lineItem.Candidate, Is.EqualTo(cmd.ResultDetail[0].Candidate));
            Assert.That(lineItem.ResultCount, Is.EqualTo(cmd.ResultDetail[0].Result));
        }
Exemplo n.º 8
0
        public WomenRepResult Confirm(WomenRepResult result, ResultInfo originatingInfo)
        {
            CommandInfo commandInfo = new CommandInfo
            {
                CommandGeneratedByUser   = originatingInfo.CommandGeneratedByUser,
                OriginatingPollingCentre = originatingInfo.OriginatingPollingCentre,
            };
            ConfirmWomenRepResultsCommand confirmWomenRepResultsCommand = new ConfirmWomenRepResultsCommand
            {
                CommandId = Guid.NewGuid(),
                CommandGeneratedByUser   = commandInfo.CommandGeneratedByUser,
                OriginatingPollingCentre = commandInfo.OriginatingPollingCentre,
                ApplyToResult            = result.GetResultRef(),
                CommandExecutionOrder    = result.LastResultCommandExecutedOrder + 1,
            };

            result.Apply(confirmWomenRepResultsCommand);
            return(result);
        }
Exemplo n.º 9
0
        public WomenRepResult Modify(WomenRepResult result, ResultInfo originatingInfo,
                                     List <ResultDetail> resultDetails)
        {
            CommandInfo commandInfo = new CommandInfo
            {
                CommandGeneratedByUser   = originatingInfo.CommandGeneratedByUser,
                OriginatingPollingCentre = originatingInfo.OriginatingPollingCentre,
            };

            var command = new ModifyWomenRepResultsCommand
            {
                CommandId = Guid.NewGuid(),
                CommandGeneratedByUser   = commandInfo.CommandGeneratedByUser,
                OriginatingPollingCentre = commandInfo.OriginatingPollingCentre,
                ApplyToResult            = result.GetResultRef(),
                CommandExecutionOrder    = result.LastResultCommandExecutedOrder + 1,
                ResultDetail             = resultDetails,
            };

            result.Apply(command);
            return(result);
        }
Exemplo n.º 10
0
        public WomenRepResult Create(ResultInfo originatingInfo, string documentReference)
        {
            CommandInfo commandInfo = new CommandInfo
            {
                CommandGeneratedByUser   = originatingInfo.CommandGeneratedByUser,
                OriginatingPollingCentre = originatingInfo.OriginatingPollingCentre,
                ResultReference          = documentReference
            };
            CreateWomenRepResultCommand createWomenRepResultCommand = new CreateWomenRepResultCommand
            {
                CommandId = Guid.NewGuid(),
                CommandGeneratedByUser   = commandInfo.CommandGeneratedByUser,
                OriginatingPollingCentre = commandInfo.OriginatingPollingCentre,
                ApplyToResult            = new ResultRef(Guid.NewGuid(), ResultType.WomenRepresentative),
                ResultReference          = commandInfo.ResultReference,
                ResultDate            = DateTime.Now,
                CommandExecutionOrder = 1
            };
            var result = new WomenRepResult();

            result.Apply(createWomenRepResultCommand);
            return(result);
        }