public async Task PostCreateCategory_CallEffectService() { var request = CreateEffectSubCategoryRequest(); var effectSubCategory = new EffectSubCategory(); var expectedEffectSubCategoryResponse = new EffectSubCategoryResponse(); _effectService.CreateEffectSubCategoryAsync(_executionContext, request) .Returns(effectSubCategory); _mapper.Map <EffectSubCategoryResponse>(effectSubCategory) .Returns(expectedEffectSubCategoryResponse); var result = await _effectSubCategoriesController.PostCreateEffectSubCategoryAsync(_executionContext, request); result.StatusCode.Should().Be(201); result.Value.Should().Be(expectedEffectSubCategoryResponse); }
public async Task <EffectSubCategory> CreateEffectSubCategoryAsync(NaheulbookExecutionContext executionContext, CreateEffectSubCategoryRequest request) { await _authorizationUtil.EnsureAdminAccessAsync(executionContext); var effectSubCategory = new EffectSubCategory { Name = request.Name, TypeId = request.TypeId, DiceSize = request.DiceSize, DiceCount = request.DiceCount, Note = request.Note, Effects = new List <Effect>() }; using (var uow = _unitOfWorkFactory.CreateUnitOfWork()) { uow.EffectSubCategories.Add(effectSubCategory); await uow.SaveChangesAsync(); } return(effectSubCategory); }
public Effect CreateEffect(EffectSubCategory subCategory, string suffix = null) { if (suffix == null) { suffix = RngUtil.GetRandomHexString(8); } return(new Effect { SubCategory = subCategory, Description = $"some-description-{suffix}", Dice = 4, Name = $"some-effect-name-{suffix}", DurationType = "combat", CombatCount = 2, Modifiers = new List <EffectModifier> { new EffectModifier { StatName = "CHA", Value = 1, Type = "ADD" }, new EffectModifier { StatName = "FO", Value = 4, Type = "ADD" }, new EffectModifier { StatName = "INT", Value = -2, Type = "ADD" }, } }); }