コード例 #1
0
        public async Task TestNoProtoclNavigateSubmitAsync()
        {
            BrowserTyped browser = new BrowserTyped();
            await browser.NavigateAsync <dynamic>("google.com");

            await browser.NavigateAsync <dynamic>("google.com", null);

            await browser.NavigateAsync <dynamic>("google.com", null, null);

            await browser.SubmitAsync <dynamic>("google.com");

            await browser.SubmitAsync <dynamic>("google.com", null);

            await browser.SubmitAsync <dynamic>("google.com", null, null);
        }
コード例 #2
0
        public async Task TestNavigateAsync()
        {
            BrowserTyped browser  = new BrowserTyped();
            var          response = await browser.NavigateAsync <Request>(RequestTesterRouteJsonUri);

            Assert.IsTrue(response.Data != null);
            Assert.IsTrue(response.Data is Request);
        }
コード例 #3
0
        public async Task TestMaxHistorySize()
        {
            BrowserTyped browser = new BrowserTyped();

            browser.MaxHistorySize = 2;
            IDocument document1 = await browser.NavigateAsync <dynamic>("https://github.com");

            Assert.True(document1 == browser.Document);
            IDocument document2 = await browser.NavigateAsync <dynamic>(RequestTesterRouteUri);

            Assert.True(document2 == browser.Document);
            IDocument document3 = await browser.NavigateAsync <dynamic>("https://nuget.org");

            Assert.True(document3 == browser.Document);
            Assert.True(browser.History.Count == 2);
            Assert.True(browser.Documents[0] == document2);
        }
コード例 #4
0
        public async Task TestStyleScrapingDisabledAsync()
        {
            BrowserTyped browser = new BrowserTyped();

            browser.StyleScrapingEnabled = false;
            IDocument document = await browser.NavigateAsync <dynamic>("https://jayx239.github.io/BrowseSharpTest/");

            Assert.True(document.Styles.Count == 0);
        }
コード例 #5
0
        public async Task TestJavascriptScrapingEnabledAsync()
        {
            BrowserTyped browser = new BrowserTyped();

            browser.JavascriptScrapingEnabled = true;
            IDocument document = await browser.NavigateAsync <dynamic>("https://jayx239.github.io/BrowseSharpTest/");

            Assert.True(document.Scripts.Count > 0);
        }
コード例 #6
0
        public async Task TestForwardAsyncCache()
        {
            BrowserTyped browser = new BrowserTyped();
            IDocument    firstResponseDocument = await browser.NavigateAsync <dynamic>("http://google.com");

            Assert.True(firstResponseDocument == browser.Document);
            Assert.True(browser.History.Count == 1);
            IDocument secondDocument = await browser.NavigateAsync <dynamic>("https://facebook.com");

            Assert.True(browser.History.Count == 2);
            await browser.BackAsync();

            Assert.True(browser.History.Count == 1);
            Assert.True(browser.ForwardHistory.Count == 1);
            Assert.True(browser.Document != firstResponseDocument);
            Assert.True(browser.Document.Response.ResponseUri == firstResponseDocument.Response.ResponseUri);

            await browser.ForwardAsync();

            Assert.True(browser.ForwardHistory.Count == 0);
            Assert.True(browser.History.Count == 2);
            Assert.True(secondDocument.Response.ResponseUri == browser.Document.Response.ResponseUri);
        }
コード例 #7
0
        public async Task TestNavigateHeadersAsync()
        {
            BrowserTyped browser = new BrowserTyped();

            Dictionary <string, string> headers = new Dictionary <string, string>();

            headers.Add("x-csrf-token", "axsd82os21");

            IDocument <Request> response = await browser.NavigateAsync <Request>(RequestTesterRouteJsonUri, headers);

            Request request = response.Data;

            Assert.IsTrue(request.Headers.ContainsKey("x-csrf-token"));
            Assert.IsTrue(request.Headers["x-csrf-token"] == "axsd82os21");
        }
コード例 #8
0
        public async Task TestRefreshAsync()
        {
            BrowserTyped browser  = new BrowserTyped();
            IDocument    document = await browser.NavigateAsync <dynamic>("https://github.com");

            IDocument documentRefreshed = await browser.RefreshAsync();

            Assert.True(documentRefreshed == browser.Document);
            Assert.True(documentRefreshed != document);
            IDocument secondDocument = browser.Navigate <dynamic>(RequestTesterRouteUri);
            IDocument thirdDocument  = browser.Navigate <dynamic>("https://nuget.org");

            browser.Back();
            await browser.RefreshAsync();

            Assert.True(browser.Document != secondDocument);
            Assert.True(browser.Document.Response.ResponseUri == secondDocument.Response.ResponseUri);
        }
コード例 #9
0
        public async Task TestNavigateHeadersAndDataAsync()
        {
            BrowserTyped browser = new BrowserTyped();

            Dictionary <string, string> formData = new Dictionary <string, string>();

            formData.Add("Username", "FakeUserName");
            formData.Add("Password", "FakePassword123");
            formData.Add("SecretMessage", "This is a secret message");

            Dictionary <string, string> headers = new Dictionary <string, string>();

            headers.Add("x-csrf-token", "axsd82os21");

            IDocument <Request> response = await browser.NavigateAsync <Request>(RequestTesterRouteJsonUri, headers, formData);

            Request request = response.Data;

            Assert.IsTrue(request.Headers["x-csrf-token"] == "axsd82os21");
            Assert.IsTrue(request.Query["Username"] == "FakeUserName");
            Assert.IsTrue(request.Query["Password"] == "FakePassword123");
            Assert.IsTrue(request.Query["SecretMessage"] == "This is a secret message");
        }