public async Task TestScrapeDepartments() { var htmlClient = new Fake.FakeHtmlClient() .OnGet(Urls.ProfessorPage(Sandy.NNumber), File.ReadAllText("Web/Pages/DepartmentSchedule.html")) .DefaultToException(); var scraper = new ScraperEnv(htmlClient) .SaveDepartments(out var depts) .Scraper(); var res = await scraper.ScrapeDepartmentsAsync(); Assert.False(res.IsError); Assert.True(depts.Any()); Assert.True(scraper.Errors.None()); }
public async Task TestScrapeProfessorEntries() { var htmlClient = new Fake.FakeHtmlClient() .OnGet(Urls.ProfessorPage(Sandy.NNumber), File.ReadAllText("Web/Pages/TestScrapeProfessorEntriesPage.html")) .DefaultToException(); var scraper = new ScraperEnv(htmlClient) .SaveEntries(out var entries) .Scraper(); var res = await scraper.ScrapeProfessorEntriesAsync(Sandy); Assert.False(res.IsError); Assert.True(entries.Count == 30); Assert.True(entries.All(x => x.Course != null)); Assert.True(entries.All(x => x.Professor != null)); Assert.True(entries.All(x => x.Term != null)); }