Exemplo n.º 1
0
        public void Execute_Sets_LastActivity()
        {
            var handler = FakeHttpMessageHandler.Create(request => new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent("{ }")
            });

            var httpClient  = new HttpClient(handler);
            var queryClient = new StreamingViewClient(httpClient, new JsonDataMapper(new DefaultSerializer()), new ClientConfiguration());

            Assert.IsNull(queryClient.LastActivity);

            var query = new ViewQuery("bucket-name", "http://localhost");

            query.Keys("test-key");
            query.UseStreaming(true);

            var result = queryClient.Execute <dynamic>(query);

            Assert.IsTrue(result.Success);
            Assert.IsNotNull(queryClient.LastActivity);
        }
Exemplo n.º 2
0
        public void ViewClient_Submits_Streaming_ViewQuery_Using_Post()
        {
            var keys         = Enumerable.Range(1, 10).Select(i => $"key-{i}").ToList();
            var expectedJson = JsonConvert.SerializeObject(new
            {
                keys
            }, Formatting.None);

            var handler = FakeHttpMessageHandler.Create(request =>
            {
                // verify request was a post
                Assert.AreEqual(HttpMethod.Post, request.Method);

                // get the post body and verify content
                var content = request.Content.ReadAsStringAsync().Result;
                Assert.AreEqual(expectedJson, content);

                // return empty json response
                return(new HttpResponseMessage(HttpStatusCode.OK)
                {
                    Content = new StringContent("{ }")
                });
            });

            var httpClient  = new HttpClient(handler);
            var queryClient = new StreamingViewClient(httpClient,
                                                      new JsonDataMapper(new DefaultSerializer()),
                                                      ContextFactory.GetCouchbaseContext());

            var query = new ViewQuery("bucket-name", "http://localhost");

            query.Keys(keys);
            query.UseStreaming(true);

            var result = queryClient.Execute <dynamic>(query);

            Assert.IsTrue(result.Success);
        }