public void SortByName_AllValidPets_Success() { var data = PetsMock.GetAllValidPets(); var pets = _service.SortByName(data).ToArray(); data.Sort((pet, pet1) => string.Compare(pet.Name, pet1.Name, StringComparison.Ordinal)); for (var i = 0; i < pets.Length; i++) { Assert.Equal(pets[i], data[i]); } }
public async Task <ListPetsByGenderResponse> Handle(ListPetsByGender request, CancellationToken cancellationToken) { var records = new List <GenderGroupedPetsRecord>(); foreach (var gender in (PersonGender[])Enum.GetValues(typeof(PersonGender))) { var owners = await _peopleRepository.ListByGenderAsync(gender, cancellationToken) ?? new List <Person>(); var pets = new List <Pet>(); foreach (var owner in owners) { var ownersPets = await _petsRepository.ListAsync(owner.Name, cancellationToken) ?? new List <Pet>(); pets.AddRange(ownersPets); } records.Add(new GenderGroupedPetsRecord { Gender = gender, Pets = _sortingService.SortByName(pets) }); } return(new ListPetsByGenderResponse { Records = records }); }