Ejemplo n.º 1
0
        public void Given_ValidCollection_When_CallingDetermineWinner_Then_ReturnsWinner()
        {
            var commission = new ElectoralCommission();
            Dictionary <string, Party> parties = new Dictionary <string, Party>
            {
                { "WASD", new Party("WASD") },
                { "QWERTY", new Party("QWERTY") },
                { "SPACE", new Party("SPACE") }
            };

            var dave  = new Person("Dave", "Wozniak", "12345678901", new DateTime(1998, 3, 11));
            var kitty = new Person("Kitty", "Wozniak", "92345678901", new DateTime(2000, 5, 1));
            var tom   = new Person("Tom", "Wozniak", "82345678901", new DateTime(1980, 7, 12));
            var jerry = new Person("Jerry", "Wozniak", "74321678901", new DateTime(1974, 7, 12));

            var expected = parties["WASD"];

            dave.Vote(parties["WASD"], commission);
            tom.Vote(parties["QWERTY"], commission);
            kitty.Vote(parties["WASD"], commission);
            jerry.Vote(parties["SPACE"], commission);

            var actual = commission.DetermineWinner(parties);

            Assert.Equal(expected, actual);
        }
Ejemplo n.º 2
0
        public void Given_NullCollection_When_CallingDetermineWinner_Then_ThrowsArgumentNullException()
        {
            var commission = new ElectoralCommission();
            Dictionary <string, Party> parties = null;

            Assert.Throws <ArgumentNullException>(() => commission.DetermineWinner(parties));
        }
Ejemplo n.º 3
0
        public void Given_EmptyCollection_When_CallingDetermineWinner_Then_ReturnsNull()
        {
            var   commission = new ElectoralCommission();
            var   parties    = new Dictionary <string, Party>();
            Party result;

            result = commission.DetermineWinner(parties);

            Assert.Null(result);
        }
Ejemplo n.º 4
0
        public void Given_ValidCollectionWithoutAnyVotes_When_CallingDetermineWinner_Then_ReturnsNull()
        {
            var commission = new ElectoralCommission();
            Dictionary <string, Party> parties = new Dictionary <string, Party>
            {
                { "WASD", new Party("WASD") },
                { "QWERTY", new Party("QWERTY") },
                { "SPACE", new Party("SPACE") }
            };

            var result = commission.DetermineWinner(parties);

            Assert.Null(result);
        }