diff --git a/tests/search/tensor_feed/tensor_feed.rb b/tests/search/tensor_feed/tensor_feed.rb index 4743008c7..200be8ed9 100644 --- a/tests/search/tensor_feed/tensor_feed.rb +++ b/tests/search/tensor_feed/tensor_feed.rb @@ -21,10 +21,13 @@ def test_tensor_json_feed puts "search_docs: #{search_docs}" assert_tensor_docs(search_docs) - visit_response = vespa.document_api_v1.visit(:selection => "test", :fieldSet => "test:[document]", :cluster => "search", :wantedDocumentCount => 10) - puts "visit_response: #{visit_response}" - visit_docs = extract_visit_docs(visit_response) - puts "visit_docs: #{visit_docs}" + visit_docs = visit_tensor_docs('test.my_tensor') + assert_visit_result_tensor_present(visit_docs) + + visit_docs = visit_tensor_docs('not test.my_tensor') + assert_visit_result_tensor_not_present(visit_docs) + + visit_docs = visit_tensor_docs('test') assert_tensor_docs(visit_docs) feed(:file => @base_dir + "updates.json") @@ -32,10 +35,7 @@ def test_tensor_json_feed puts "search_docs: #{search_docs}" assert_tensor_docs_after_updates(search_docs) - visit_response = vespa.document_api_v1.visit(:selection => "test", :fieldSet => "test:[document]", :cluster => "search", :wantedDocumentCount => 10) - puts "visit_response: #{visit_response}" - visit_docs = extract_visit_docs(visit_response) - puts "visit_docs: #{visit_docs}" + visit_docs = visit_tensor_docs('test') assert_tensor_docs_after_updates(visit_docs) end @@ -86,6 +86,28 @@ def run_tensor_json_feed_attribute assert_tensor_docs_after_updates(search_docs) end + def visit_tensor_docs(selection) + visit_response = vespa.document_api_v1.visit(:selection => selection, :fieldSet => "test:[document]", :cluster => "search", :wantedDocumentCount => 10) + puts "visit_response: #{visit_response}" + visit_docs = extract_visit_docs(visit_response) + puts "visit_docs: #{visit_docs}" + visit_docs + end + + def extract_doc_ids(docs) + docs.map { |d| d['id'] }.to_a + end + + def assert_visit_result_tensor_present(docs) + ids = extract_doc_ids(docs) + assert_equal(ids, ['id:test:test::1', 'id:test:test::2', 'id:test:test::3']) + end + + def assert_visit_result_tensor_not_present(docs) + ids = extract_doc_ids(docs) + assert_equal(ids, ['id:test:test::0']) + end + def assert_tensor_docs(docs) assert_nil(get_tensor_field(docs[0])) assert_tensor_field([], docs[1])