public void Setup()
        {
            rpsGameStore = Substitute.For <IRPSGameStore>();
            moveMaker    = Substitute.For <IMoveMaker>();

            rpsGameStore.GetGame().Returns(new RPSGame(numberOfGames, numberOfDynamite));
            moveMaker.MakeMove(Arg.Any <int>()).Returns(Move.Rock);

            rpsPlayer = new RPSPlayer(rpsGameStore, moveMaker);
        }
        public void Setup()
        {
            rpsGameStore = Substitute.For <IRPSGameStore>();
            moveMaker    = Substitute.For <IMoveMaker>();
            rpsGame.AddGame(Move.Rock);
            rpsGame.Games[0].UpdateOutcome(Outcome.Win, Move.Warterbomb);

            rpsGameStore.GetGame().Returns(rpsGame);

            rpsPlayer = new RPSPlayer(rpsGameStore, moveMaker);
        }
        public void Setup()
        {
            rpsGameStore = Substitute.For <IRPSGameStore>();
            moveMaker    = Substitute.For <IMoveMaker>();

            rpsGame.AddGame(Move.Paper);
            rpsGameStore.GetGame().Returns(rpsGame);
            moveMaker.MakeMove(Arg.Any <int>()).Returns(Move.Rock);

            rpsPlayer = new RPSPlayer(rpsGameStore, moveMaker);
        }
示例#4
0
 public void Setup()
 {
     rpsGameStore = Substitute.For <IRPSGameStore>();
     moveMaker    = Substitute.For <IMoveMaker>();
     rpsPlayer    = new RPSPlayer(rpsGameStore, moveMaker);
 }
示例#5
0
        static void Main(string[] args)
        {
            try
            {
                var rng = new Random();

                var hello = new HelloWorldActor();
                hello.Start();
                hello.Post("Hello World!");

                Ask();

                var hello2 = new ReactHelloWorldActor();
                hello2.Start();
                hello2.Post("Hello World!");

                Ask();

                var loop = new SimpleLoopActor();
                loop.Start();
                loop.Post(rng.Next(42));

                Ask();

                var ping = new SimplePingPong();
                var pong = new SimplePingPong();
                ping.Start();
                pong.Start();
                ping.Post(PingPongMessage.Ping, pong);

                Ask();

                PingPongActor[] pp = new PingPongActor[2];
                pp[0] = new ReceivePingPongActor(rng.Next(3, 10));
                pp[1] = new ReactPingPongActor(rng.Next(3, 10));
                pp[0].Start();
                pp[1].Start();
                int idx = rng.Next(2);
                pp[idx].Post(PingPongMessage.Ping, pp[1 - idx]);

                Ask();

                pp[0] = new ReceivePingPongActor(rng.Next(3, 10));
                pp[1] = new YReactPingPongActor(rng.Next(3, 10));
                pp[0].Start();
                pp[1].Start();
                idx = rng.Next(2);
                pp[idx].Post(PingPongMessage.Ping, pp[1 - idx]);

                Ask();

                var player1 = new RPSPlayer("Player 1");
                player1.Start();
                var player2 = new RPSPlayer("Player 2");
                player2.Start();
                var referee = new RPSCoordinator();
                referee.Start();

                player1.Post(new RPSMessage() { Order = RPSMessage.RPS.Go }, referee);
                player2.Post(new RPSMessage() { Order = RPSMessage.RPS.Go }, referee);

                System.Threading.Thread.Sleep(7456);
                player1.Post(new RPSMessage() { Order = RPSMessage.RPS.End });
                player2.Post(new RPSMessage() { Order = RPSMessage.RPS.End });
                referee.Post(new RPSMessage() { Order = RPSMessage.RPS.End });
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }

            Console.WriteLine("Press [ENTER] to quit");
            Console.ReadLine();
        }