public void TestChangeTrackerWithDocsIds()
        {
            var testURL = GetReplicationURL();
            var changeTracker = new ChangeTracker(testURL, ChangeTrackerMode
                .LongPoll, 0, false, null);

            var docIds = new List<string>();
            docIds.AddItem("doc1");
            docIds.AddItem("doc2");
            changeTracker.SetDocIDs(docIds);

            var docIdsJson = "[\"doc1\",\"doc2\"]";
            var docIdsEncoded = Uri.EscapeUriString(docIdsJson);
            var expectedFeedPath = string.Format("_changes?feed=longpoll&limit=50&heartbeat=300000&since=0&filter=_doc_ids&doc_ids={0}", 
                docIdsEncoded);
            string changesFeedPath = changeTracker.GetChangesFeedPath();
            Assert.AreEqual(expectedFeedPath, changesFeedPath);

            changeTracker.UsePost = true;
            var parameters = changeTracker.GetChangesFeedParams();
            Assert.AreEqual("_doc_ids", parameters["filter"]);
            AssertEnumerablesAreEqual(docIds, (IEnumerable)parameters["doc_ids"]);

            var body = changeTracker.GetChangesFeedPostBody();
            Assert.IsTrue(body.Contains(docIdsJson));
        }
        public void TestChangeTrackerWithDocsIds()
        {
            var testURL = GetReplicationURL();
            var changeTracker = new ChangeTracker(testURL, ChangeTrackerMode
                .LongPoll, 0, false, null);

            var docIds = new List<string>();
            docIds.Add("doc1");
            docIds.Add("doc2");
            changeTracker.SetDocIDs(docIds);

            var docIdsJson = "[\"doc1\",\"doc2\"]";
            var parameters = changeTracker.GetChangesFeedParams();
            Assert.AreEqual("_doc_ids", parameters["filter"]);
            AssertEnumerablesAreEqual(docIds, (IEnumerable)parameters["doc_ids"]);

            var body = changeTracker.GetChangesFeedPostBody();
            Assert.IsTrue(body.Contains(docIdsJson));
        }