示例#1
0
        public void ProxyTest()
        {
            var resourceProvider = new ResourceProviderBuilder()
                                   .Http(x => x.Proxy(new WebProxy("88.146.227.247", 8080)))
                                   .Build();

            var engine = new Engine(resourceProvider);

            engine.OpenUrl("https://rutracker.org").Wait();
            System.Console.WriteLine(engine.Document.DocumentElement.InnerHTML);
        }
        public static async Task NotifyTest()
        {
            string method = null;

            var http = Mock.Of <IResourceProvider>();

            Mock.Get(http)
            .Setup(x => x.SendRequestAsync(It.IsAny <Request>()))
            .Returns <Request>(x =>
            {
                method = x.Method;
                return(Task.Run(() => (IResource) new Response("text/html", null)));
            });

            var resources = new ResourceProviderBuilder().Notify(rq => { rq.Method = "POST"; }, null).Http(http).Build();

            var request = new Request("GET", new Uri("http://knyaz.optimus", UriKind.Absolute));

            var response = await resources.SendRequestAsync(request);

            Assert.AreEqual("POST", method);
            Assert.AreEqual("text/html", response.Type);
        }