public virtual async Task <IEnumerable <ApartComplex> > AggregateData() { var apartComplexes = await _apartComplexHandler.GetApartComplexes(); await _apartmentHandler.SetApartments(apartComplexes); return(apartComplexes); }
public async Task GetApartComplexes() { // Arrange var cityData = CreateCityData(); var apartComplexGroupHrefs = CreateApartComplexGroupHrefs(); var apartComplexGroupUrls = CreateApartComplexGroupUrls(apartComplexGroupHrefs); var apartComplexGroupHtmls = CreateApartComplexGroupHtmls(apartComplexGroupHrefs); var apartComplexGroupData = CreateApartComplexGroupData(cityData, apartComplexGroupUrls); var apartComplexGroupPageUrls = CreatePageUrls(apartComplexGroupData); var apartComplexHtmls = CreateApartComplexHtmls(); var apartComplexes = CreateApartComplexes(apartComplexHtmls, cityData); var expectedResult = CreateExpectedResult(apartComplexes).ToList(); var htmlWebMoc = new Mock <HtmlWeb>(); var htmlParserMock = MockHtmlParser(htmlWebMoc, apartComplexGroupHtmls, apartComplexGroupHrefs); var pageHandlerMock = MockPageHandler( htmlParserMock, cityData, apartComplexGroupHtmls, apartComplexGroupHrefs, apartComplexGroupUrls, apartComplexGroupData, apartComplexGroupPageUrls, apartComplexHtmls, apartComplexes); var apartComplexHandler = new ApartComplexHandler(pageHandlerMock.Object, htmlParserMock.Object); // Act var actualResult = (await apartComplexHandler.GetApartComplexes(cityData)).ToList(); // Assert Assert.Equal(expectedResult.Count(), actualResult.Count()); for (var iter = 0; iter < expectedResult.Count(); iter++) { Assert.True(CompareApartComplexes(expectedResult[iter], actualResult[iter])); } }