anchor.diff:  should_filter_by_specific_doc_ids({DbName, _}) ->
       ?_test(
           begin
  -            ChangesArgs = #changes_args{
  +            ChArgs = #changes_args{
                   filter = "_doc_ids"
               },
               DocIds = [<<"doc3">>, <<"doc4">>, <<"doc9999">>],
               Req = {json_req, {[{<<"doc_ids">>, DocIds}]}},
  -            Consumer = spawn_consumer(DbName, ChangesArgs, Req),
  -
  -            {Rows, LastSeq} = wait_finished(Consumer),
  -            {ok, Db} = couch_db:open_int(DbName, []),
  -            UpSeq = couch_db:get_update_seq(Db),
  -            couch_db:close(Db),
  -            stop_consumer(Consumer),
  +            {Rows, LastSeq, UpSeq} = run_changes_query(DbName, ChArgs, Req),
   
               ?assertEqual(2, length(Rows)),
               [#row{seq = Seq1, id = Id1}, #row{seq = Seq2, id = Id2}] = Rows,
  
positive.code:             Selector = {[{<<"_id">>, <<"doc3">>}]},
              Req = {json_req, {[{<<"selector">>, Selector},
                                 {<<"fields">>, []}]}},
              Consumer = spawn_consumer(DbName, ChArgs, Req),
              {Rows, LastSeq} = wait_finished(Consumer),
              {ok, Db} = couch_db:open_int(DbName, []),
              UpSeq = couch_db:get_update_seq(Db),
              couch_db:close(Db),
              stop_consumer(Consumer),
              ?assertEqual(1, length(Rows)),
              [#row{seq = Seq, id = Id, doc = Doc}] = Rows,
              ?assertEqual(<<"doc3">>, Id),
  
negative.code:             ChArgs = #changes_args{filter = "_selector"},
              Selector = {[{<<"_id">>, <<"doc3">>}]},
              Req = {json_req, {[{<<"selector">>, Selector}]}},
              {Rows, LastSeq, _} = run_changes_query(DbName, ChArgs, Req),
              ?assertMatch(
                  [#row{seq = LastSeq, id = <<"doc3">>, deleted = true}],
                  Rows
  