Example #1
0
        public void Should_return_challenger_cards_when_player_id_is_challenger()
        {
            var game = CreateGame();

            var subject = new InProgress.GameStateDataStrategy();

            var actual = subject.GetData(game, new Guid(ChallengerId));

            actual.Should().BeOfType(typeof(InProgress.Data));
            ((InProgress.Data)actual).ChallengerCards
            .Should()
            .BeEquivalentTo(ChallengerCards.Select(x => x.Name));
        }
Example #2
0
        public void Should_return_correct_state(string playerId)
        {
            var game = CreateGame();

            var subject = new InProgress.GameStateDataStrategy();

            var actual = subject.GetData(game, Guid.TryParse(playerId, out var g) ? (Guid?)g : null);

            actual.Should().BeOfType(typeof(InProgress.Data));
            actual.Should().Match(
                (InProgress.Data x) => x.GameId == GameId &&
                x.Status == "InProgress" &&
                x.HostTurn == true &&
                x.HostWonCoinToss == false);
        }
Example #3
0
        public void Should_not_return_challenger_cards(string playerId)
        {
            var game = CreateGame();

            var subject = new InProgress.GameStateDataStrategy();

            var actual = subject.GetData(game, Guid.TryParse(playerId, out var g) ? (Guid?)g : null);

            actual.Should().BeOfType(typeof(InProgress.Data));
            ((InProgress.Data)actual).ChallengerCards
            .Should()
            .OnlyContain(x => x == "Hidden")
            .And
            .HaveCount(ChallengerCards.Count());
        }