Ejemplo n.º 1
0
        public async Task RollAgainstAsync(IUser targetUser, [Remainder] string stat)
        {
            ulong discordId       = Context.User.Id;
            ulong targetDiscordId = targetUser.Id;
            var   result          = await _controller.RollStatisticAgainstAsync(discordId, targetDiscordId, stat);

            await ReplyAsync(result.Message);
        }
Ejemplo n.º 2
0
        public async Task RollAgainst_InvalidStatValues_ReturnRollFailed()
        {
            // Arrange
            var provider     = new MockCharacterProvider();
            var statProvider = new MockStatisticProvider();
            var controller   = new RollController(provider, statProvider, new MockRollStrategy());

            // Act
            var result = await controller.RollStatisticAgainstAsync(1, 2, "strength");

            // Assert
            Assert.Equal(RollResult.RollFailed(), result);
        }
Ejemplo n.º 3
0
        public async Task RollAgainst_InvalidStat_ReturnStatNotFound()
        {
            // Arrange
            var provider     = new MockCharacterProvider();
            var statProvider = new MockStatisticProvider();
            var controller   = new RollController(provider, statProvider, new MockRollStrategy());

            // Act
            var result = await controller.RollStatisticAgainstAsync(1, 2, "invalid");

            // Assert
            Assert.Equal(StatisticResult.StatisticNotFound(), result);
        }
Ejemplo n.º 4
0
        public async Task RollAgainst_InvalidTarget_ReturnCharacterNotFound()
        {
            // Arrange
            var provider     = new MockCharacterProvider();
            var statProvider = new MockStatisticProvider();
            var controller   = new RollController(provider, statProvider, new MockRollStrategy());

            // Act
            var result = await controller.RollStatisticAgainstAsync(1, 0, "strength");

            // Assert
            Assert.Equal(CharacterResult.CharacterNotFound(), result);
        }
Ejemplo n.º 5
0
        public async Task RollAgainst_ValidValues_ReturnSuccess()
        {
            // Arrange
            var statProvider = new MockStatisticProvider();
            var strength     = await statProvider.GetStatisticAsync("Strength");

            var provider = new MockCharacterProvider();

            // Give characters statistics
            (await provider.GetAllCharactersAsync(1))[0].SetStatistic(strength, new StatisticValue(5));
            (await provider.GetAllCharactersAsync(2))[0].SetStatistic(strength, new StatisticValue(5));

            var controller = new RollController(provider, statProvider, new MockRollStrategy());

            // Act
            var result = await controller.RollStatisticAgainstAsync(1, 2, "strength");

            // Assert
            Assert.True(result.GetType() == typeof(RollResult) && result.IsSuccess);
        }