private void ExecuteAwardSwag()
        {
            if (!CanSwag)
            {
                MessageBox.Show("All swagged out");
                SwagText = "All swagged out";
            }
            else
            {
                if (_swagOMeterAwardEngine.CanSwag)
                {
                    _swagOMeterAwardEngine.AwardSwag();

                    _awardedSwag     = _swagOMeterAwardEngine.AwardedSwag;
                    _winningAttendee = _swagOMeterAwardEngine.WinningAttendee;

                    CanSwag = _swagOMeterAwardEngine.CanSwag;

                    if (!CanSwag)
                    {
                        SwagText = "All Swagged Out!";
                    }

                    ResetDisplayText();
                    ChangeResponseButtons(true);
                }
            }
        }
Exemple #2
0
        public static IWinner Create(ISwag swag, IAttendee attendee)
        {
            var winner = new Winner {
                AwardedSwag = swag, WinningAttendee = attendee
            };

            return(winner);
        }
        private void ExecuteAttendeeNotPresent()
        {
            _swagOMeterAwardEngine.AttendeeNotPresent();
            _awardedSwag = null;

            CheckCanSwag();
            ResetDisplayText();

            ChangeResponseButtons(false);
        }
        private void ExecuteAttendeeDoesNotWantSwag()
        {
            _swagOMeterAwardEngine.AttendeeDoesNotWantSwag();

            _winningAttendee = null;
            _awardedSwag     = null;

            CheckCanSwag();
            ResetDisplayText();

            ChangeResponseButtons(false);
        }
        private bool IsAttendeeAndSwagComboValid(IAttendee attendeeToCheck, ISwag swagToCheck)
        {
            var swagCanBeAwarded = !_badSwagCombinations.Any(bs => bs.AwardedSwag.Thing == swagToCheck.Thing &&
                                                             bs.WinningAttendee.Name == attendeeToCheck.Name);

            if (!swagCanBeAwarded)
            {
                _attendees.Add(attendeeToCheck);
                _swag.Add(swagToCheck);
            }

            return(swagCanBeAwarded);
        }
        public IWinner AwardSwag()
        {
            if (CanSwag)
            {
                var winner = GetWinner();

                AwardedSwag     = winner.AwardedSwag;
                WinningAttendee = winner.WinningAttendee;
                return(winner);
            }

            return(null);
        }
        public void AttendeeDoesNotWantSwag()
        {
            var matchedWinner = GetMatchedWinner();

            WinningAttendee = null;
            AwardedSwag     = null;

            CreateBadSwagCombinations(matchedWinner);

            _swag.Add(matchedWinner.AwardedSwag);
            _attendees.Add(matchedWinner.WinningAttendee);
            _winners.Remove(matchedWinner);

            CheckCanSwag();
        }
        public void AttendeeNotPresent()
        {
            _swag.Add(AwardedSwag);
            AwardedSwag = null;

            var matchedWinner = GetMatchedWinner();

            WinningAttendee = null;

            if (matchedWinner != null)
            {
                _winners.Remove(matchedWinner);
            }

            CheckCanSwag();
        }
        private ISwag GetSwag()
        {
            var   randomNumber   = new Random();
            ISwag awardedSwag    = null;
            var   swagNotAwarded = true;

            while (swagNotAwarded)
            {
                int index = randomNumber.Next(0, _swag.Count);
                awardedSwag = _swag[index];

                swagNotAwarded = false;
            }

            _swag.Remove(awardedSwag);

            CheckCanSwag();

            return(awardedSwag);
        }
        private IWinner GetWinner()
        {
            IAttendee winningAttendee = null;
            ISwag     swag            = null;

            var swagAwarded = false;

            while (!swagAwarded)
            {
                winningAttendee = GetAttendee();
                swag            = GetSwag();

                swagAwarded = IsAttendeeAndSwagComboValid(winningAttendee, swag);
            }

            var winner = Winner.Create(swag, winningAttendee);

            _winners.Add(winner);

            return(winner);
        }
        private void ExecuteAwardSwag()
        {
            if (!CanSwag)
            {
                MessageBox.Show("All swagged out");
                SwagText = "All swagged out";
            }
            else
            {
                if (_swagOMeterAwardEngine.CanSwag)
                {
                    _swagOMeterAwardEngine.AwardSwag();

                    _awardedSwag = _swagOMeterAwardEngine.AwardedSwag;
                    _winningAttendee = _swagOMeterAwardEngine.WinningAttendee;

                    CanSwag = _swagOMeterAwardEngine.CanSwag;

                    if (!CanSwag)
                        SwagText = "All Swagged Out!";

                    ResetDisplayText();
                    ChangeResponseButtons(true);
                }
            }
        }
Exemple #12
0
 internal SwagService(ISwag swag)
 {
     _swag = swag;
 }
Exemple #13
0
 public SwagService()
 {
     _swag = new StructureMapDependencyResolver().GetConcreteInstanceOf<ISwag>();
 }
        private void ExecuteAttendeeNotPresent()
        {
            _swagOMeterAwardEngine.AttendeeNotPresent();
            _awardedSwag = null;

            CheckCanSwag();
            ResetDisplayText();

            ChangeResponseButtons(false);
        }
        private bool IsAttendeeAndSwagComboValid(IAttendee attendeeToCheck, ISwag swagToCheck)
        {
            var swagCanBeAwarded = !_badSwagCombinations.Any(bs => bs.AwardedSwag.Thing == swagToCheck.Thing &&
                                                                    bs.WinningAttendee.Name == attendeeToCheck.Name);

            if (!swagCanBeAwarded)
            {
                _attendees.Add(attendeeToCheck);
                _swag.Add(swagToCheck);
            }

            return swagCanBeAwarded;
        }
 public void TestInitialize()
 {
     _mockRepository = new MockRepository();
     _mockDomain = _mockRepository.StrictMock<ISwag>();
 }
 public void TestCleanup()
 {
     _mockDomain = null;
 }
Exemple #18
0
        public static IWinner Create(ISwag swag, IAttendee attendee)
        {
            var winner = new Winner {AwardedSwag = swag, WinningAttendee = attendee};

            return winner;
        }
        private void ExecuteAttendeeDoesNotWantSwag()
        {
            _swagOMeterAwardEngine.AttendeeDoesNotWantSwag();

            _winningAttendee = null;
            _awardedSwag = null;

            CheckCanSwag();
            ResetDisplayText();

            ChangeResponseButtons(false);
        }