Exemple #1
0
        public async Task GetForSummaryByOwnerIdAsync_LoadCharacterOwnedByUser_IncludingJobs()
        {
            TestDataUtil
            .AddUser();
            var user = TestDataUtil.GetLast <User>();

            TestDataUtil
            .AddJob()
            .AddOrigin();

            TestDataUtil.AddCharacter(user.Id, c => c.Jobs = new List <CharacterJob>
            {
                new CharacterJob
                {
                    JobId = TestDataUtil.GetLast <Job>().Id
                }
            });
            var expectedCharacter = TestDataUtil.GetLast <Character>();

            var characters = await _characterRepository.GetForSummaryByOwnerIdAsync(user.Id);

            var character = characters.First();

            character.Should().BeEquivalentTo(expectedCharacter, config => config.Excluding(x => x.Owner).Excluding(x => x.Jobs).Excluding(x => x.Origin));
            character.Jobs.First().Job.Should().BeEquivalentTo(TestDataUtil.GetLast <Job>());
            character.Origin.Should().BeEquivalentTo(TestDataUtil.GetLast <Origin>(), config => config.Excluding(x => x.Bonuses).Excluding(x => x.Information).Excluding(x => x.Requirements).Excluding(x => x.Skills).Excluding(x => x.Restrictions));
        }