示例#1
0
        public async Task GetAsyncWithCancelledToken()
        {
            var p = new Dictionary <string, string>();

            p["q"]    = "*";
            p["rows"] = "1";
            var conn        = new AutoSolrConnection(solrURL);
            var tokenSource = new CancellationTokenSource(1);

            await Assert.ThrowsAsync <TaskCanceledException>(() => conn.GetAsync("/select/", p, tokenSource.Token));
        }
示例#2
0
        public async Task SimpleGetAsync()
        {
            var p = new Dictionary <string, string>();

            p["q"]    = "*";
            p["rows"] = "1";
            var conn     = new AutoSolrConnection(solrURL);
            var response = await conn.GetAsync("/select/", p);

            var xdoc = XDocument.Parse(response);

            Assert.Equal("0", xdoc.Root.Element("lst").Elements("int").First(el => (string)el.Attribute("name") == "status").Value);
        }
示例#3
0
        public async Task GetAsyncAutoPost()
        {
            var p = new Dictionary <string, string>();

            p["q"]    = "*";
            p["rows"] = "1";
            p["test"] = string.Join("", Enumerable.Range(0, 9000).Select(a => Guid.NewGuid().ToString()));
            var conn     = new AutoSolrConnection(solrURL);
            var response = await conn.GetAsync("/select/", p);

            var xdoc = XDocument.Parse(response);

            Assert.Equal("0", xdoc.Root.Element("lst").Elements("int").First(el => (string)el.Attribute("name") == "status").Value);
        }
示例#4
0
        public async Task GetAsyncAutoPostWithStream()
        {
            //No mocking yet of HTTPClient, so checked with Fiddler if indeed POST-ed
            var p = new Dictionary <string, string>();

            p["q"]    = "*";
            p["rows"] = "1";
            p["test"] = string.Join("", Enumerable.Range(0, 9000).Select(a => "a"));
            var conn     = new AutoSolrConnection(solrURL);
            var response = await conn.GetAsync("/select/", p, CancellationToken.None);

            var xdoc = XDocument.Load(response);

            Assert.Equal("0", xdoc.Root.Element("lst").Elements("int").First(el => (string)el.Attribute("name") == "status").Value);
            Assert.True(int.Parse((string)xdoc.Root.Element("result").Attribute("numFound")) > 1);
            Assert.Single(xdoc.Root.Element("result").Elements("doc"));
        }