Exemple #1
0
        public void  NextGen_EmitsEventWithNewState()
        {
            // Arrange
            var rows = Faker.RandomNumber.Next(2, 10);
            var cols = Faker.RandomNumber.Next(2, 10);
            // Create a dummy grid to be returned by the Generation service
            var newGameState = new GridBuilder()
                               .WithCols(cols)
                               .WithRows(rows)
                               .Build();

            // Creat a stub gen service, give it the grid to return
            var genService = new GenerationServiceBuilder()
                             .NextGeneration_Returns(newGameState)
                             .Build();

            // Create Event Emitter
            var eventEmitter = new GameEventEmitterBuilder().Build();

            // Act
            var sut = _createSubjectUnderTest(rows, cols, genService: genService, eventEmitter: eventEmitter);

            sut.StartGame();
            sut.NextGen();

            // Assert
            eventEmitter
            .Received(1)
            .NewGameStateEvent(newGameState);
        }
Exemple #2
0
        public void StartGame_EmitsInitialState()
        {
            // Arrange
            var rows         = Faker.RandomNumber.Next(2, 10);
            var cols         = Faker.RandomNumber.Next(2, 10);
            var eventEmitter = new GameEventEmitterBuilder().Build();

            // Act
            var sut = _createSubjectUnderTest(rows, cols, eventEmitter);

            sut.StartGame();

            // Assert
            eventEmitter
            .Received(1)
            .InitGameStateEvent(Arg.Any <IList <IList <ICell> > >());
        }