Example #1
0
        public async Task AddEffectAsync_MultipleEffects_ReturnSuccess()
        {
            // Arrange
            var charProvider   = new MockCharacterProvider();
            var effectProvider = new MockEffectProvider();
            var statProvider   = new MockStatisticProvider();
            var controller     = new EffectController(charProvider, effectProvider, statProvider, new GeneralOptions());

            var effect = await effectProvider.CreateEffectAsync(1, "ValidInput");

            var effect2 = await effectProvider.CreateEffectAsync(1, "ValidInput2");

            // Act
            await controller.AddEffectAsync(1, "ValidInput");

            await controller.AddEffectAsync(1, "ValidInput2");

            // Assert
            var character = await charProvider.GetActiveCharacterAsync(1);

            Assert.True(character.Effects.Contains(effect) && character.Effects.Contains(effect2));
        }
Example #2
0
        public async Task SetStatisticEffectAsync_ValidInput_ReturnSuccess()
        {
            // Arrange
            var charProvider   = new MockCharacterProvider();
            var effectProvider = new MockEffectProvider();
            var statProvider   = new MockStatisticProvider();

            var controller = new EffectController(charProvider, effectProvider, statProvider, null);

            await effectProvider.CreateEffectAsync(1, "ValidInput");

            var result = await controller.SetStatisticEffectAsync("ValidInput", "Strength", 1);

            Assert.Equal(EffectResult.EffectUpdatedSucessfully(), result);
        }
Example #3
0
        public async Task SetStatisticEffectAsync_InvalidStatisticName_ReturnStatisticNotFound()
        {
            // Arrange
            var charProvider   = new MockCharacterProvider();
            var effectProvider = new MockEffectProvider();
            var statProvider   = new MockStatisticProvider();

            var controller = new EffectController(charProvider, effectProvider, statProvider, null);

            await effectProvider.CreateEffectAsync(1, "ValidInput");

            var result = await controller.SetStatisticEffectAsync("ValidInput", "DoesNotExist", 1);

            Assert.Equal(StatisticResult.StatisticNotFound(), result);
        }
Example #4
0
        public async Task DeleteEffect_ValidInput_ReturnSuccess()
        {
            // Arrange
            var charProvider   = new MockCharacterProvider();
            var statProvider   = new MockStatisticProvider();
            var effectProvider = new MockEffectProvider();
            var controller     = new EffectController(charProvider, effectProvider, statProvider, new GeneralOptions());

            // Act
            await effectProvider.CreateEffectAsync(1, "ValidInput");

            var result = await controller.DeleteEffectAsync("ValidInput");

            // Assert
            Assert.Equal(result, EffectResult.EffectDeletedSuccessfully());
        }