Exemplo n.º 1
0
        public async void GetSpiderSingleItemAsync()
        {
            using (var httpClient = GetFakeHttpClient(CrawlResponseString))
            {
                var expectedResponse = GetCrawlResponseObject <TargetComItem>().Items.First();
                var scrapyClient     = new ScrapyRTClient(httpClient);

                var response = await scrapyClient.GetSpiderSingleItemAsync <TargetComItem>("SomeSpider", "https://google.com");

                response.Should()
                .BeOfType <TargetComItem>()
                .And
                .BeEquivalentTo(expectedResponse);
            }
        }
Exemplo n.º 2
0
        public async void PostSpiderItemsAsync()
        {
            using (var httpClient = GetFakeHttpClient(CrawlResponseString))
            {
                var request          = GetCrawlRequestObject();
                var expectedResponse = GetCrawlResponseObject <TargetComItem>().Items;
                var scrapyClient     = new ScrapyRTClient(httpClient);

                var response = await scrapyClient.PostSpiderItemsAsync <TargetComItem>(request);

                response.Should()
                .BeOfType <List <TargetComItem> >()
                .And
                .BeEquivalentTo(expectedResponse)
                .And
                .HaveCount(2);
            }
        }
Exemplo n.º 3
0
        public async void GetSpiderCrawlAsync_ValidUrl()
        {
            using (var httpMessageHandler = new FakeHttpMessageHandler <string>(CrawlResponseString))
                using (var httpClient = new HttpClient(httpMessageHandler)
                {
                    BaseAddress = new Uri("https://localhost:9080")
                })
                {
                    var scrapyClient = new ScrapyRTClient(httpClient);

                    await scrapyClient.GetSpiderCrawlAsync <TargetComItem>(
                        "SomeSpider",
                        "https://google.com",
                        "callback_method",
                        14,
                        true);

                    httpMessageHandler.ResponseUri.ToString().Should()
                    .BeEquivalentTo("https://localhost:9080/crawl.json?spider_name=SomeSpider&url=https%253a%252f%252fgoogle.com&callback=callback_method&max_requests=14&start_requests=True");
                }
        }