예제 #1
0
        public void TestFixtureSetUp()
        {
            _invalidQSep = GetQSeparate(candidate1YesCheckErrorLevel: ErrorLevel.Valid,
                                        candidate1NoCheckErrorLevel: ErrorLevel.Valid,
                                        candidate1AbsCheckErrorLevel: ErrorLevel.Error,
                                        candidate1YesVotesErrorLevel: ErrorLevel.WasntChecked,
                                        candidate1NoVotesErrorLevel: ErrorLevel.WasntChecked,
                                        candidate1AbsVotesErrorLevel: ErrorLevel.WasntChecked,

                                        candidate2YesCheckErrorLevel: ErrorLevel.Error,
                                        candidate2NoCheckErrorLevel: ErrorLevel.Error,
                                        candidate2AbsCheckErrorLevel: ErrorLevel.Valid,
                                        candidate2YesVotesErrorLevel: ErrorLevel.WasntChecked,
                                        candidate2NoVotesErrorLevel: ErrorLevel.WasntChecked,
                                        candidate2AbsVotesErrorLevel: ErrorLevel.WasntChecked);

            _validQSep = GetQSeparate(candidate1YesCheckErrorLevel: ErrorLevel.Valid,
                                      candidate1NoCheckErrorLevel: ErrorLevel.Valid,
                                      candidate1AbsCheckErrorLevel: ErrorLevel.Valid,
                                      candidate1YesVotesErrorLevel: ErrorLevel.WasntChecked,
                                      candidate1NoVotesErrorLevel: ErrorLevel.WasntChecked,
                                      candidate1AbsVotesErrorLevel: ErrorLevel.WasntChecked,

                                      candidate2YesCheckErrorLevel: ErrorLevel.Valid,
                                      candidate2NoCheckErrorLevel: ErrorLevel.WasntChecked,
                                      candidate2AbsCheckErrorLevel: ErrorLevel.Valid,
                                      candidate2YesVotesErrorLevel: ErrorLevel.WasntChecked,
                                      candidate2NoVotesErrorLevel: ErrorLevel.WasntChecked,
                                      candidate2AbsVotesErrorLevel: ErrorLevel.WasntChecked);

            _invalidQSep2 = GetQSeparate(candidate1YesCheckErrorLevel: ErrorLevel.Valid,
                                         candidate1NoCheckErrorLevel: ErrorLevel.Valid,
                                         candidate1AbsCheckErrorLevel: ErrorLevel.Error,
                                         candidate1YesVotesErrorLevel: ErrorLevel.WasntChecked,
                                         candidate1NoVotesErrorLevel: ErrorLevel.WasntChecked,
                                         candidate1AbsVotesErrorLevel: ErrorLevel.WasntChecked,

                                         candidate2YesCheckErrorLevel: ErrorLevel.Valid,
                                         candidate2NoCheckErrorLevel: ErrorLevel.WasntChecked,
                                         candidate2AbsCheckErrorLevel: ErrorLevel.Valid,
                                         candidate2YesVotesErrorLevel: ErrorLevel.WasntChecked,
                                         candidate2NoVotesErrorLevel: ErrorLevel.Error,
                                         candidate2AbsVotesErrorLevel: ErrorLevel.WasntChecked);

            var questions = new List <Question> {
                _invalidQSep, _validQSep, _invalidQSep2
            };

            var bulletin = TestBulletinModel.Create(questions);

            var checker = new QuestionValidityChecker(new CandidateValidityChecker(), new AdrQuestionValidityChecker());

            _invalidQuestions = checker.GetInvalidQuestions(bulletin);
        }
        public void BaseYesNoAbsPointTests(bool yesCheck, long yesVotes, bool hasInstructions, bool hasTrust, bool notWholeStockWasPassed, long expectedResultLong)
        {
            var allowedVotesAmount = new FractionLong(100);

            var point = TestBulletinModel.GetFreshBaseYesNoAbsPoint(yesVotes: yesVotes.FL(), yesCheck: yesCheck);

            var additionalMarks = TestBulletinModel.GetAdditionalMarks(hasInstructions, hasTrust, notWholeStockWasPassed);

            var result   = _calculator.GetVotesForYesField(point, allowedVotesAmount, additionalMarks);
            var expected = new FractionLong(expectedResultLong);

            Assert.That(result, Is.EqualTo(expected));
        }
        public void TestFixtureSetUp()
        {
            _invalidQCum1 = GetQCumulative(candidate1ErrorLevel: ErrorLevel.WasntChecked,
                                           candidate2ErrorLevel: ErrorLevel.Error,
                                           candidate3ErrorLevel: ErrorLevel.Valid,
                                           candidate4ErrorLevel: ErrorLevel.Valid,
                                           candidate5ErrorLevel: ErrorLevel.WasntChecked,

                                           yesCheckBoxErrorLevel: ErrorLevel.Valid,
                                           noCheckBoxErrorLevel: ErrorLevel.WasntChecked,
                                           noVotesErrorLevel: ErrorLevel.Valid,
                                           abstainedCheckBoxErrorLevel: ErrorLevel.WasntChecked,
                                           abstainedVotesErrorLevel: ErrorLevel.Valid);


            _validQCum = GetQCumulative(candidate1ErrorLevel: ErrorLevel.WasntChecked,
                                        candidate2ErrorLevel: ErrorLevel.WasntChecked,
                                        candidate3ErrorLevel: ErrorLevel.Valid,
                                        candidate4ErrorLevel: ErrorLevel.Valid,
                                        candidate5ErrorLevel: ErrorLevel.WasntChecked,

                                        yesCheckBoxErrorLevel: ErrorLevel.Valid,
                                        noCheckBoxErrorLevel: ErrorLevel.WasntChecked,
                                        noVotesErrorLevel: ErrorLevel.Valid,
                                        abstainedCheckBoxErrorLevel: ErrorLevel.WasntChecked,
                                        abstainedVotesErrorLevel: ErrorLevel.Valid);



            _invalidQCum2 = GetQCumulative(candidate1ErrorLevel: ErrorLevel.WasntChecked,
                                           candidate2ErrorLevel: ErrorLevel.WasntChecked,
                                           candidate3ErrorLevel: ErrorLevel.Valid,
                                           candidate4ErrorLevel: ErrorLevel.Valid,
                                           candidate5ErrorLevel: ErrorLevel.WasntChecked,

                                           yesCheckBoxErrorLevel: ErrorLevel.Valid,
                                           noCheckBoxErrorLevel: ErrorLevel.WasntChecked,
                                           noVotesErrorLevel: ErrorLevel.Valid,
                                           abstainedCheckBoxErrorLevel: ErrorLevel.Error,
                                           abstainedVotesErrorLevel: ErrorLevel.Valid);

            var questions = new List <Question>
            {
                _invalidQCum1, _validQCum, _invalidQCum2
            };
            var bulletin = TestBulletinModel.Create(questions);

            var checker = new QuestionValidityChecker(new CandidateValidityChecker(), new AdrQuestionValidityChecker());

            _invalidQuestions = checker.GetInvalidQuestions(bulletin);
        }
        public void InitBulletin()
        {
            Page1 = new Page(1);
            Page2 = new Page(2);
            Page3 = new Page(3);


            var questions = new List <Question>();

            QSimple1 = TestBulletinModel.GetFreshQSimple(Page1);
            QSimple2 = TestBulletinModel.GetFreshQSimple(Page1);
            QSimple3 = TestBulletinModel.GetFreshQSimple(Page1);
            questions.Add(QSimple1);
            questions.Add(QSimple2);
            questions.Add(QSimple3);


            QCumulative1 = TestBulletinModel.GetFreshQCumulative(Page2);
            QCumulative2 = TestBulletinModel.GetFreshQCumulative(Page2);
            questions.Add(QCumulative1);
            questions.Add(QCumulative2);

            QSeparate1 = TestBulletinModel.GetFreshQSeparate(Page3);
            QSeparate2 = TestBulletinModel.GetFreshQSeparate(Page3);
            questions.Add(QSeparate1);
            questions.Add(QSeparate2);

            const bool packetIsRegistered = true;

            Signature1 = new Signature(Fields.CheckBoxDocField(true, Page1), 1, 1, new List <Question> {
                QSimple1, QSimple2, QSimple3, QSeparate1
            });
            Signature2 = new Signature(Fields.CheckBoxDocField(true, Page2), 2, 2, new List <Question> {
                QSeparate2, QCumulative1
            });
            Signature3 = new Signature(Fields.CheckBoxDocField(true, Page3), 3, 3, new List <Question> {
                QCumulative2
            });

            var signatures = new List <Signature> {
                Signature1, Signature2, Signature3
            };

            Bulletin = TestBulletinModel.Create(questions, signatures, AllowedVotesAmount, PackStatus, TrustExists, packetIsRegistered);

            var graph = GraphProvider.BuildGraph(Bulletin);

            new GraphWalker().WalkThrough(graph, Bulletin);
        }
        public void TestFixtureSetUp()
        {
            #region doesnt matter constants
            const bool doesntmatter  = true;
            var        doesntmatter2 = FractionLong.Zero;
            #endregion

            _invalidQSimple1 = new QSimple(1,
                                           new BaseYesNoAbsPoint(
                                               Fields.CheckBoxDocField(doesntmatter, ErrorLevel.Error),
                                               Fields.CheckBoxDocField(doesntmatter, ErrorLevel.Error),
                                               Fields.CheckBoxDocField(doesntmatter, ErrorLevel.Valid),
                                               Fields.VotesDocField(doesntmatter2),
                                               Fields.VotesDocField(doesntmatter2),
                                               Fields.VotesDocField(doesntmatter2)
                                               ));
            _validQSimple = new QSimple(2,
                                        new BaseYesNoAbsPoint(
                                            Fields.CheckBoxDocField(doesntmatter, ErrorLevel.WasntChecked),
                                            Fields.CheckBoxDocField(doesntmatter, ErrorLevel.Valid),
                                            Fields.CheckBoxDocField(doesntmatter, ErrorLevel.Valid),
                                            Fields.VotesDocField(doesntmatter2, ErrorLevel.WasntChecked),
                                            Fields.VotesDocField(doesntmatter2, ErrorLevel.Valid),
                                            Fields.VotesDocField(doesntmatter2, ErrorLevel.WasntChecked)
                                            ));
            _invalidQSimple2 = new QSimple(3,
                                           new BaseYesNoAbsPoint(
                                               Fields.CheckBoxDocField(doesntmatter, ErrorLevel.Valid),
                                               Fields.CheckBoxDocField(doesntmatter, ErrorLevel.WasntChecked),
                                               Fields.CheckBoxDocField(doesntmatter, ErrorLevel.Valid),
                                               Fields.VotesDocField(doesntmatter2, ErrorLevel.Error),
                                               Fields.VotesDocField(doesntmatter2, ErrorLevel.WasntChecked),
                                               Fields.VotesDocField(doesntmatter2, ErrorLevel.WasntChecked)
                                               ));

            var bulletin = TestBulletinModel.Create(new List <Question>
            {
                _invalidQSimple1,
                _validQSimple,
                _invalidQSimple2,
            });

            var checker = new QuestionValidityChecker(new CandidateValidityChecker(), new AdrQuestionValidityChecker());
            _invalidQuestions = checker.GetInvalidQuestions(bulletin);
        }