Ejemplo n.º 1
0
        public void UserCouldFinishGame()
        {
            
            var probe = CreateTestProbe();
            var gamesNotStarted = new PlayBoardEvent();
            var gameKey = Guid.NewGuid().ToString();
            var owner = new Player( "Pedro Perez", Guid.NewGuid().ToString());

            var playerRegistering = new Player( "Edgar Leonardo", Guid.NewGuid().ToString());
            var playerRegistering2 = new Player( "Edgar Antonio", Guid.NewGuid().ToString());

            var playerRegistering3 = new Player( "Edgar Miguel", Guid.NewGuid().ToString());
            var gameEvent = new GameEvent(gameKey, owner);

            var gameRegister = new GameRegister(gameEvent);
            gamesNotStarted.GameRegistered.Add(gameKey, gameRegister);
            var playboard = Sys.ActorOf(PlayBoardActor.Props(gamesNotStarted));

            var message = new EnterExistingGame(playerRegistering, gameKey);
            playboard.Tell(message, probe.Ref);
            var received = probe.ExpectMsg<UserRegistrationDone>();
            Assert.Equal(gameKey, received.GameId);
            Assert.Equal(playerRegistering.Id, received.PlayerInfo.Id);
            message = new EnterExistingGame(playerRegistering2, gameKey);
            playboard.Tell(message, probe.Ref);
            received = probe.ExpectMsg<UserRegistrationDone>();
            Assert.Equal(gameKey, received.GameId);
            Assert.Equal(playerRegistering2.Id, received.PlayerInfo.Id);

            /// Initializing the game the first player that create the game
            var startGame = new ThrowDice(playerRegistering, gameKey);
            playboard.Tell(startGame, probe.Ref);
            var creceived3 = probe.ExpectMsg<GameRegister>();
            /// The Game must be started, if game is started
            Assert.True(creceived3.GameEventDashboard.IsGameStarted);

            var messageFinishGame = new FinishGame(playerRegistering2, gameKey);
            playboard.Tell(messageFinishGame, probe.Ref);
            var receivedIsStarted = probe.ExpectMsg<GameRegister>();
            Assert.Equal(receivedIsStarted.GameEventDashboard.GameId, gameKey);

        }
Ejemplo n.º 2
0
        public void UserEnterNotStartedGame()
        {
            var probe = CreateTestProbe();
            var gamesNotStarted = new PlayBoardEvent();
            var gameKey = Guid.NewGuid().ToString();
            var connectionId = Guid.NewGuid().ToString();
            var owner = new Player("Pedro Perez", connectionId);

            var playerRegistering = new Player( "Edgar Leonardo", Guid.NewGuid().ToString());
            var gameEvent = new GameEvent(gameKey, owner);
            var gameRegister = new GameRegister(gameEvent);
            gamesNotStarted.GameRegistered.Add(gameKey, gameRegister);
            var playboard = Sys.ActorOf(PlayBoardActor.Props( gamesNotStarted));

            var message = new EnterExistingGame(playerRegistering, gameKey);
            playboard.Tell(message, probe.Ref);

            var received = probe.ExpectMsg<UserRegistrationDone>();
            Assert.Equal(gameKey, received.GameId);

            Assert.Equal(playerRegistering.Id, received.PlayerInfo.Id);
        }
Ejemplo n.º 3
0
 private PlayBoardActor(PlayBoardEvent Event)
 {
     Event = new PlayBoardEvent();
     StartingReceivers();
 }
Ejemplo n.º 4
0
 public PlayBoardActor()
 {
     Event = new PlayBoardEvent();
     StartingReceivers();
     _game = new Dictionary <string, IActorRef>();
 }
Ejemplo n.º 5
0
 public static Props Props(PlayBoardEvent eve) =>
 Akka.Actor.Props.Create(() =>
                         new PlayBoardActor(eve));