public void HandleTestThrowsNullReferenceException239()
        {
            LookupGamePlayersDto   lookupGamePlayersDto;
            GetPlayerStatisticsDto getPlayerStatisticsDto;
            Guid s0
                = new Guid(default(int), (short)32, (short)32, default(byte), default(byte),
                           default(byte), default(byte), default(byte),
                           default(byte), default(byte), default(byte));

            lookupGamePlayersDto                 = new LookupGamePlayersDto();
            lookupGamePlayersDto.GameId          = s0;
            lookupGamePlayersDto.PlayerName      = (string)null;
            lookupGamePlayersDto.Placing         = 0;
            lookupGamePlayersDto.Winnings        = 0;
            lookupGamePlayersDto.PayIn           = 0;
            getPlayerStatisticsDto               = new GetPlayerStatisticsDto();
            getPlayerStatisticsDto.PlayerName    = (string)null;
            getPlayerStatisticsDto.GamesPlayed   = 0;
            getPlayerStatisticsDto.Winnings      = 0;
            getPlayerStatisticsDto.PayIn         = 0;
            getPlayerStatisticsDto.Profit        = 0;
            getPlayerStatisticsDto.ProfitPerGame = 0;
            GetPlayerStatisticsHandler s1 = new GetPlayerStatisticsHandler();

            ((BaseHandler)s1).QueryDataStore = (IQueryDataStore)null;
            LookupGamePlayersDto[]   lookupGamePlayersDtos   = new LookupGamePlayersDto[2];
            GetPlayerStatisticsDto[] getPlayerStatisticsDtos = new GetPlayerStatisticsDto[1]
            ;
            lookupGamePlayersDtos[0]   = lookupGamePlayersDto;
            lookupGamePlayersDtos[1]   = lookupGamePlayersDto;
            getPlayerStatisticsDtos[0] = getPlayerStatisticsDto;
            this.HandleTest
                (s1, (GameDeletedEvent)null, lookupGamePlayersDtos, getPlayerStatisticsDtos);
        }
        public void HandleTestThrowsOverflowException477()
        {
            LookupGamePlayersDto   lookupGamePlayersDto;
            GetPlayerStatisticsDto getPlayerStatisticsDto;
            FakeQueryDataStore     fakeQueryDataStore;
            GameDeletedEvent       gameDeletedEvent;

            lookupGamePlayersDto                 = new LookupGamePlayersDto();
            lookupGamePlayersDto.GameId          = default(Guid);
            lookupGamePlayersDto.PlayerName      = (string)null;
            lookupGamePlayersDto.Placing         = 0;
            lookupGamePlayersDto.Winnings        = 1065353216;
            lookupGamePlayersDto.PayIn           = -1909903360;
            getPlayerStatisticsDto               = new GetPlayerStatisticsDto();
            getPlayerStatisticsDto.PlayerName    = (string)null;
            getPlayerStatisticsDto.GamesPlayed   = 0;
            getPlayerStatisticsDto.Winnings      = 0;
            getPlayerStatisticsDto.PayIn         = 0;
            getPlayerStatisticsDto.Profit        = 827772928;
            getPlayerStatisticsDto.ProfitPerGame = 0;
            fakeQueryDataStore = new FakeQueryDataStore();
            gameDeletedEvent   = new GameDeletedEvent();
            GetPlayerStatisticsHandler s0 = new GetPlayerStatisticsHandler();

            ((BaseHandler)s0).QueryDataStore = (IQueryDataStore)fakeQueryDataStore;
            LookupGamePlayersDto[]   lookupGamePlayersDtos   = new LookupGamePlayersDto[2];
            GetPlayerStatisticsDto[] getPlayerStatisticsDtos = new GetPlayerStatisticsDto[1]
            ;
            lookupGamePlayersDtos[0]   = lookupGamePlayersDto;
            lookupGamePlayersDtos[1]   = lookupGamePlayersDto;
            getPlayerStatisticsDtos[0] = getPlayerStatisticsDto;
            this.HandleTest
                (s0, gameDeletedEvent, lookupGamePlayersDtos, getPlayerStatisticsDtos);
        }
 private void AddGameToPlayer(GetPlayerStatisticsDto player, PlayerAddedToGameEvent e)
 {
     player.PlayerName = e.PlayerName;
     player.GamesPlayed++;
     player.Winnings     += e.Winnings;
     player.PayIn        += e.PayIn;
     player.Profit       += e.Winnings - e.PayIn;
     player.ProfitPerGame = player.Profit / player.GamesPlayed;
 }
        public void HandleTest872()
        {
            LookupGamePlayersDto   lookupGamePlayersDto;
            GetPlayerStatisticsDto getPlayerStatisticsDto;
            FakeQueryDataStore     fakeQueryDataStore;
            GameDeletedEvent       gameDeletedEvent;

            using (IPexObserveContext observer = PexObserve.NewTest())
            {
                Guid s0 = new Guid
                              (default(int), (short)32, (short)32, default(byte), default(byte),
                              default(byte), default(byte), default(byte),
                              default(byte), default(byte), default(byte));
                lookupGamePlayersDto                 = new LookupGamePlayersDto();
                lookupGamePlayersDto.GameId          = s0;
                lookupGamePlayersDto.PlayerName      = (string)null;
                lookupGamePlayersDto.Placing         = 0;
                lookupGamePlayersDto.Winnings        = 0;
                lookupGamePlayersDto.PayIn           = 0;
                getPlayerStatisticsDto               = new GetPlayerStatisticsDto();
                getPlayerStatisticsDto.PlayerName    = (string)null;
                getPlayerStatisticsDto.GamesPlayed   = 0;
                getPlayerStatisticsDto.Winnings      = 0;
                getPlayerStatisticsDto.PayIn         = 0;
                getPlayerStatisticsDto.Profit        = 0;
                getPlayerStatisticsDto.ProfitPerGame = 0;
                fakeQueryDataStore = new FakeQueryDataStore();
                gameDeletedEvent   = new GameDeletedEvent();
                GetPlayerStatisticsHandler s1 = new GetPlayerStatisticsHandler();
                ((BaseHandler)s1).QueryDataStore = (IQueryDataStore)fakeQueryDataStore;
                LookupGamePlayersDto[]   lookupGamePlayersDtos = new LookupGamePlayersDto[2];
                GetPlayerStatisticsDto[] getPlayerStatisticsDtos
                    = new GetPlayerStatisticsDto[1];
                lookupGamePlayersDtos[0]   = lookupGamePlayersDto;
                lookupGamePlayersDtos[1]   = lookupGamePlayersDto;
                getPlayerStatisticsDtos[0] = getPlayerStatisticsDto;
                this.HandleTest
                    (s1, gameDeletedEvent, lookupGamePlayersDtos, getPlayerStatisticsDtos);
                Assert.IsNotNull((object)s1);
                Assert.IsNotNull(((BaseHandler)s1).QueryDataStore);
                GetPlayerStatisticsDto ovplayerStats
                    = observer.GetObservedValue <GetPlayerStatisticsDto>("playerStats");
                Assert.IsNotNull((object)ovplayerStats);
                Assert.AreEqual <string>((string)null, ovplayerStats.PlayerName);
                Assert.AreEqual <int>(0, ovplayerStats.GamesPlayed);
                Assert.AreEqual <int>(0, ovplayerStats.Winnings);
                Assert.AreEqual <int>(0, ovplayerStats.PayIn);
                Assert.AreEqual <int>(0, ovplayerStats.Profit);
                Assert.AreEqual <double>(0, ovplayerStats.ProfitPerGame);
            }
        }
        public void Handle(PlayerAddedToGameEvent e)
        {
            var player = QueryDataStore.GetData <GetPlayerStatisticsDto>().FirstOrDefault(x => x.PlayerName == e.PlayerName);

            if (player == null)
            {
                player = new GetPlayerStatisticsDto();

                AddGameToPlayer(player, e);

                QueryDataStore.Insert <GetPlayerStatisticsDto>(player);
            }
            else
            {
                AddGameToPlayer(player, e);

                QueryDataStore.SaveChanges();
            }
        }