예제 #1
0
        public void Parse_MirsList_From_FileContent_Test()
        {
            string fileContent = @"1;""МИР1"";5
2;""МИР2"";4
3;""МИР3"";5
4;""МИР4"";10
5;""МИР5"";7
6;""МИР6"";12
7;""МИР7"";7
8;""Извън страната"";0";

            List <Mir> expected = new List <Mir>()
            {
                new Mir(1, "\"МИР1\"", 5),
                new Mir(2, "\"МИР2\"", 4),
                new Mir(3, "\"МИР3\"", 5),
                new Mir(4, "\"МИР4\"", 10),
                new Mir(5, "\"МИР5\"", 7),
                new Mir(6, "\"МИР6\"", 12),
                new Mir(7, "\"МИР7\"", 7),
                new Mir(8, "\"Извън страната\"", 0),
            };
            List <Mir> actual;

            actual = InputParsers.ParseMirsListFromFileContent(fileContent);
            Assert.IsTrue(CompareHelpers.AreEqualCollections <Mir>(expected, actual));
        }
예제 #2
0
        public bool Matches(RSAParameters p2)
        {
            var p1 = parameters;

            return(CompareHelpers.ByteArraysEqual(p1.Modulus, p2.Modulus) &&
                   CompareHelpers.ByteArraysEqual(p1.Exponent, p2.Exponent));
        }
예제 #3
0
 public bool Equals(HandValueSettings handValueSettings)
 {
     return(handValueSettings != null && handValueSettings.AnyHv == AnyHv &&
            handValueSettings.AnyFlushDraws == AnyFlushDraws &&
            handValueSettings.AnyStraightDraws == AnyStraightDraws &&
            CompareHelpers.CompareIntegerLists(handValueSettings.SelectedFlushDraws, SelectedFlushDraws) &&
            CompareHelpers.CompareIntegerLists(handValueSettings.SelectedHv, SelectedHv) &&
            CompareHelpers.CompareIntegerLists(handValueSettings.SelectedStraighDraws, SelectedStraighDraws));
 }
예제 #4
0
        public bool Matches(DSAParameters p2)
        {
            var p1 = parameters;

            return(p1.Counter == p2.Counter &&
                   CompareHelpers.ByteArraysEqual(p1.G, p2.G) &&
                   CompareHelpers.ByteArraysEqual(p1.J, p2.J) &&
                   CompareHelpers.ByteArraysEqual(p1.P, p2.P) &&
                   CompareHelpers.ByteArraysEqual(p1.Q, p2.Q) &&
                   CompareHelpers.ByteArraysEqual(p1.X, p2.X) &&
                   CompareHelpers.ByteArraysEqual(p1.Y, p2.Y) &&
                   CompareHelpers.ByteArraysEqual(p1.Seed, p2.Seed));
        }
예제 #5
0
        public void CompareController_AddEmployerJS_Success_RedirectToReturnUrl()
        {
            // Arrange
            Config.SetAppSetting("SearchService:CacheResults", "true");

            var    controller     = UiTestHelper.GetController <CompareController>();
            string returnUrl      = @"\viewing\search-results";
            var    organisationId = 123;
            var    expectedObfuscatedOrganisationId = ViewingControllerTests.ConfigureObfuscator(organisationId);

            var employer = new Core.Models.EmployerSearchModel()
            {
                OrganisationIdEncrypted = expectedObfuscatedOrganisationId,
                OrganisationId          = "123",
                Name = "Org123"
            };

            var model = new AddRemoveButtonViewModel()
            {
                OrganisationIdEncrypted = employer.OrganisationIdEncrypted,
                OrganisationName        = employer.Name
            };

            controller.SearchViewService.LastSearchResults = new SearchViewModel()
            {
                Employers = new PagedResult <Core.Models.EmployerSearchModel>()
                {
                    Results = new List <Core.Models.EmployerSearchModel>()
                    {
                        employer
                    }
                }
            };

            // Act
            var result = controller.AddEmployerJs(employer.OrganisationIdEncrypted, returnUrl) as PartialViewResult;

            // Assert
            Assert.NotNull(result);
            Assert.AreEqual(returnUrl, controller.ViewBag.ReturnUrl);
            Assert.AreEqual("Basket_Button", result.ViewName);
            CompareHelpers.Compare(model, result.Model);
            Assert.AreEqual(controller.CompareViewService.BasketItemCount, 1);
            Assert.IsTrue(controller.CompareViewService.ComparedEmployers.Value.Contains(model.OrganisationIdEncrypted));
            controller.AssertCookieAdded(CookieNames.LastCompareQuery, expectedObfuscatedOrganisationId);
        }
예제 #6
0
        public void CompareController_RemoveEmployerJS_Success_ReturnAddButtons()
        {
            // Arrange
            var    controller         = UiTestHelper.GetController <CompareController>();
            long   organisationId     = 123;
            string employerIdentifier = "abc123";
            string returnUrl          = @"\viewing\search-results";
            var    employer           = new Core.Models.EmployerSearchModel()
            {
                OrganisationIdEncrypted = employerIdentifier,
                OrganisationId          = organisationId.ToString()
            };

            controller.SearchViewService.LastSearchResults = new SearchViewModel()
            {
                Employers = new PagedResult <Core.Models.EmployerSearchModel>()
                {
                    Results = new List <Core.Models.EmployerSearchModel>()
                    {
                        employer
                    }
                }
            };
            controller.CompareViewService.AddToBasket(employer.OrganisationIdEncrypted);
            var model = new AddRemoveButtonViewModel()
            {
                OrganisationIdEncrypted = employer.OrganisationIdEncrypted, OrganisationName = employer.Name
            };

            // Act
            var result = controller.RemoveEmployerJs(employerIdentifier, returnUrl) as PartialViewResult;

            // Assert
            Assert.NotNull(result);
            Assert.AreEqual(returnUrl, controller.ViewBag.ReturnUrl);
            Assert.AreEqual("Basket_Button", result.ViewName);
            CompareHelpers.Compare(model, result.Model);
            Assert.AreEqual(controller.CompareViewService.BasketItemCount, 0);
            Assert.IsFalse(controller.CompareViewService.ComparedEmployers.Value.Contains(employer.OrganisationIdEncrypted));
            controller.AssertCookieDeleted(CookieNames.LastCompareQuery);
        }
예제 #7
0
        public void Parse_VotesList_From_FileContent_Test()
        {
            string fileContent = @"1;1;35121
1;2;20010
1;3;8456
1;4;18211
1;5;8200
";

            List <Vote> expected = new List <Vote>()
            {
                new Vote(1, 1, 35121),
                new Vote(1, 2, 20010),
                new Vote(1, 3, 8456),
                new Vote(1, 4, 18211),
                new Vote(1, 5, 8200),
            };
            List <Vote> actual;

            actual = InputParsers.ParseVotesListFromFileContent(fileContent);
            Assert.IsTrue(CompareHelpers.AreEqualCollections <Vote>(expected, actual));
        }
예제 #8
0
        public void Parse_PartiesList_FromFileContent_Test()
        {
            string fileContent = @"1;""П1""
2;""П2""
3;""П3""
4;""П4""
5;""П5""
";

            List <Party> expected = new List <Party>()
            {
                new Party(1, "\"П1\""),
                new Party(2, "\"П2\""),
                new Party(3, "\"П3\""),
                new Party(4, "\"П4\""),
                new Party(5, "\"П5\""),
            };
            List <Party> actual;

            actual = InputParsers.ParsePartiesListFromFileContent(fileContent);
            Assert.IsTrue(CompareHelpers.AreEqualCollections <Party>(expected, actual));
        }
예제 #9
0
        public override bool Equals(object obj)
        {
            var textureSettings = obj as TextureSettings;

            if (textureSettings == null)
            {
                return(false);
            }

            return(IsFlushCardFilter == textureSettings.IsFlushCardFilter &&
                   IsOpenEndedStraightDrawsFilter == textureSettings.IsOpenEndedStraightDrawsFilter &&
                   (IsOpenEndedStraightDrawsFilter && OpenEndedStraightDraws == textureSettings.OpenEndedStraightDraws || !IsOpenEndedStraightDrawsFilter) &&
                   IsGutshotsFilter == textureSettings.IsGutshotsFilter &&
                   (IsGutshotsFilter && Gutshots == textureSettings.Gutshots || !IsGutshotsFilter) &&
                   IsHighcardFilter == textureSettings.IsHighcardFilter &&
                   (IsHighcardFilter && HighestCard == textureSettings.HighestCard || !IsHighcardFilter) &&
                   IsPairedFilter == textureSettings.IsPairedFilter &&
                   (IsPairedFilter && IsPairedFilterTrue == textureSettings.IsPairedFilterTrue || !IsPairedFilter) &&
                   IsPossibleStraightsFilter == textureSettings.IsPossibleStraightsFilter &&
                   (IsPossibleStraightsFilter && (PossibleStraights == textureSettings.PossibleStraights && PossibleStraightsCompare == textureSettings.PossibleStraightsCompare) || !IsPossibleStraightsFilter) &&
                   IsCardTextureFilter == textureSettings.IsCardTextureFilter &&
                   (IsCardTextureFilter && CompareHelpers.CompareStringLists(SelectedCardTextureList, textureSettings.SelectedCardTextureList) || !IsCardTextureFilter));
        }
 public static bool ByteArraysEqual(byte[] a, byte[] b) =>
 CompareHelpers.ByteArraysEqual(a, b);
예제 #11
0
        public void Parse_ResultsList_From_FileContent_Test()
        {
            string fileContent = @"1;1;3
1;2;1
1;4;1
2;1;1
2;2;1
2;3;1
2;4;1
3;1;1
3;2;2
3;3;1
3;4;1
4;1;4
4;2;2
4;3;3
4;4;1
5;1;2
5;2;2
5;3;2
5;4;1
6;1;4
6;2;4
6;3;3
6;4;1
7;1;3
7;2;2
7;3;1
7;4;1

";

            List <Result> expected = new List <Result>()
            {
                new Result(1, 1, 3),
                new Result(1, 2, 1),
                new Result(1, 4, 1),
                new Result(2, 1, 1),
                new Result(2, 2, 1),
                new Result(2, 3, 1),
                new Result(2, 4, 1),
                new Result(3, 1, 1),
                new Result(3, 2, 2),
                new Result(3, 3, 1),
                new Result(3, 4, 1),
                new Result(4, 1, 4),
                new Result(4, 2, 2),
                new Result(4, 3, 3),
                new Result(4, 4, 1),
                new Result(5, 1, 2),
                new Result(5, 2, 2),
                new Result(5, 3, 2),
                new Result(5, 4, 1),
                new Result(6, 1, 4),
                new Result(6, 2, 4),
                new Result(6, 3, 3),
                new Result(6, 4, 1),
                new Result(7, 1, 3),
                new Result(7, 2, 2),
                new Result(7, 3, 1),
                new Result(7, 4, 1),
            };
            List <Result> actual;

            actual = InputParsers.ParseResultsListFromFileContent(fileContent);
            Assert.IsTrue(CompareHelpers.AreEqualCollections <Result>(expected, actual));
        }
예제 #12
0
        public void CalculateMandates_Test_Sample_1_Standard()
        {
            //sample input
            string mirsFileContent    = @"1;""МИР1"";5
2;""МИР2"";4
3;""МИР3"";5
4;""МИР4"";10
5;""МИР5"";7
6;""МИР6"";12
7;""МИР7"";7
8;""Извън страната"";0";
            string partiesFileContent = @"1;""П1""
2;""П2""
3;""П3""
4;""П4""
5;""П5""
";
            string votesFileContent   = @"1;1;35121
1;2;20010
1;3;8456
1;4;18211
1;5;8200
2;1;23332
2;2;19888
2;3;10200
2;4;15501
2;5;5500
3;1;25678
3;2;27200
3;3;15002
3;4;11521
3;5;1520
4;1;70213
4;2;34556
4;3;41234
4;4;10750
4;5;750
5;1;41111
5;2;32090
5;3;37083
5;4;10882
5;5;805
6;1;75203
6;2;71234
6;3;55222
6;4;11764
6;5;1750
7;1;28800
7;2;23230
7;3;21121
7;4;21411
7;5;11200
8;1;10009
8;2;7512
8;3;5234
8;4;22056
8;5;2350";

            string resultsFileContent = @"1;1;3
1;2;1
1;4;1
2;1;1
2;2;1
2;3;1
2;4;1
3;1;1
3;2;2
3;3;1
3;4;1
4;1;4
4;2;2
4;3;3
4;4;1
5;1;2
5;2;2
5;3;2
5;4;1
6;1;4
6;2;4
6;3;3
6;4;1
7;1;3
7;2;2
7;3;1
7;4;1
";
            //parse collections
            IList <Mir>        mirs            = InputParsers.ParseMirsListFromFileContent(mirsFileContent);       // TODO: Initialize to an appropriate value
            IList <Party>      parties         = InputParsers.ParsePartiesListFromFileContent(partiesFileContent); // TODO: Initialize to an appropriate value
            IList <Vote>       votes           = InputParsers.ParseVotesListFromFileContent(votesFileContent);     // TODO: Initialize to an appropriate value
            IList <Result>     expectedResults = InputParsers.ParseResultsListFromFileContent(resultsFileContent);
            IList <Lot>        lots            = new List <Lot>();
            MandatesCalculator target          = new MandatesCalculator(mirs, parties, votes, lots); // TODO: Initialize to an appropriate value

            target.CalculateMandates();
            var actualResults = target.Results;

            Assert.IsTrue(CompareHelpers.AreEqualCollections <Result>(expectedResults, actualResults));
        }