Esempio n. 1
0
        public async Task AddHitPointsAsync_Adds_Temporary_HP_To_Character()
        {
            //assemble
            var characterId = Guid.NewGuid();
            var character   = new Character("test-name", 2,
                                            new List <(CharacterClass, CharacterClassDetails)>
            {
                (CharacterClass.Barbarian, new CharacterClassDetails
                {
                    HitDiceValue = 2,
                    Level = 2
                })
            }, new CharacterStats(), 0)
            {
                Id = characterId
            };

            var repo = new Mock <IRepository <Character> >();

            repo.Setup(r => r.GetAsync(It.IsAny <Guid>()))
            .ReturnsAsync(character);
            var service = new CharacterService(repo.Object, new TestHPGenerator());

            //act
            await service.AddHitPointsAsync(characterId, 10, true);

            //assert
            Assert.AreEqual(character.TemporaryHp, 10);
        }