public void ReadWolferhamptonRace_Withfile_Sucess()
        {
            //Arrange
            _dataClient.ReadJsonData(Arg.Any <string>()).Returns(RaceResponse());

            //Act
            var raceData = _wolferhamptonRaceClient.GetRacesData();

            //Assert
            Assert.NotNull(raceData);
            Assert.Single(raceData);
            Assert.Equal(1, raceData[0].Id);
            Assert.Equal("Test Horse 1", raceData[0].Name);
            Assert.Equal(5.6m, raceData[0].Price);
        }
Esempio n. 2
0
        public List <PeopleSearchResponse> SearchPeople(PeopleSearchRequest request)
        {
            var data   = _dataReadClient.ReadJsonData(_configuration.DataFile);
            var result = new List <PeopleSearchResponse>();

            if (request.Gender == null)
            {
                foreach (var ancestralData in data)
                {
                    var people = ancestralData.People.Where(n => n.Name.ToLower().Contains(request.Keyword.ToLower()));

                    result.AddRange(from person in people
                                    let birthPlace = ancestralData.Places.FirstOrDefault(s => s.Id == person.PlaceId)?.Name
                                                     select new PeopleSearchResponse(person, birthPlace));
                }
            }
            else
            {
                var gender = request.Gender == Gender.Female ? "F" : "M";

                foreach (var ancestralData in data)
                {
                    var people = ancestralData.People.Where(n =>
                                                            n.Name.ToLower().Contains(request.Keyword.ToLower()) && string.Equals(n.Gender, gender, StringComparison.CurrentCultureIgnoreCase));

                    result.AddRange(from person in people
                                    let birthPlace = ancestralData.Places.FirstOrDefault(s => s.Id == person.PlaceId)?.Name
                                                     select new PeopleSearchResponse(person, birthPlace));
                }
            }

            return(result);
        }
Esempio n. 3
0
        public PeopleServiceTests()
        {
            _configuration  = Substitute.For <IAppConfiguration>();
            _dataReadClient = Substitute.For <IDataReadClient <AncestralData> >();
            _peopleService  = new PeopleService(_configuration, _dataReadClient);

            _dataReadClient.ReadJsonData(Arg.Any <string>()).Returns(GetAncestralData());
        }
 public List <HorseDetails> GetRacesData()
 {
     return(MapData(_dataClient.ReadJsonData("Wolferhampton_")));
 }