예제 #1
0
        public void WhenFilteringPetSummary_Success()
        {
            _petApiClient.GetAllPerson().Returns(_inputPersonPetData);
            var personPetReadService = new PersonPetReadService(_petApiClient);
            var filterResult         = personPetReadService.GetFilteredDataByPetType(PetType.Cat);

            Assert.IsTrue(filterResult != null);
            var genderPetCategoryDtos = filterResult as GenderPetCategoryDto[] ?? filterResult.ToArray();

            Assert.AreEqual(genderPetCategoryDtos.ToList().Count, 2);
            Assert.AreEqual(genderPetCategoryDtos.ToList().Where(p => p.GenderType == GenderType.Male).SelectMany(p => p.Pets).Count(), 4);
            Assert.AreEqual(genderPetCategoryDtos.ToList().Where(p => p.GenderType == GenderType.Female).SelectMany(p => p.Pets).Count(), 3);
        }
예제 #2
0
        public void WhenRetrievingPetSummary_Success()
        {
            _petApiClient.GetAllPerson().Returns(_inputPersonPetData);
            var personPetReadService = new PersonPetReadService(_petApiClient);
            var summaryResult        = personPetReadService.GetCategorizePets(PetType.Cat);

            Assert.IsTrue(summaryResult != null);
            Assert.AreEqual(summaryResult.Count, 2);
            Assert.AreEqual(summaryResult.Count(p => p.GenderType == Enum.GetName(typeof(GenderType), GenderType.Male)), 1);
            Assert.AreEqual(summaryResult.Count(p => p.GenderType == Enum.GetName(typeof(GenderType), GenderType.Female)), 1);
            Assert.AreEqual(summaryResult.Where(p => p.GenderType == Enum.GetName(typeof(GenderType), GenderType.Male)).SelectMany(q => q.Pets).Count(), 4);
            Assert.AreEqual(summaryResult.Where(p => p.GenderType == Enum.GetName(typeof(GenderType), GenderType.Female)).SelectMany(q => q.Pets).Count(), 3);
        }