module GdsApi::TestHelpers::Rummager
def assert_rummager_posted_item(attributes)
def assert_rummager_posted_item(attributes) url = Plek.new.find('search') + "/documents" assert_requested(:post, url) do |req| data = JSON.parse(req.body) attributes.to_a.all? do |key, value| data[key.to_s] == value end end end
def client
def client GdsApi::Rummager.new("http://example.com") end
def example_query
def example_query { filter_organisations: ["an-organisation-slug"], facet_specialist_sectors: "1000,examples:4,example_scope:global,order:value.title" } end
def no_search_results_found
def no_search_results_found File.read( File.expand_path( "../../../../test/fixtures/no_services_and_info_data_found_fixture.json", __FILE__ ) ) end
def rummager_has_no_services_and_info_data_for_organisation
def rummager_has_no_services_and_info_data_for_organisation stub_request_for(no_search_results_found) run_example_query end
def rummager_has_services_and_info_data_for_organisation
def rummager_has_services_and_info_data_for_organisation stub_request_for(search_results_found) run_example_query end
def rummager_has_specialist_sector_organisations(sub_sector)
def rummager_has_specialist_sector_organisations(sub_sector) stub_request_for(sub_sector_organisations_results) run_example_query end
def run_example_query
def run_example_query client.unified_search(example_query) end
def search_results_found
def search_results_found File.read( File.expand_path( "../../../../test/fixtures/services_and_info_fixture.json", __FILE__ ) ) end
def stub_any_rummager_post
def stub_any_rummager_post stub_request(:post, %r{#{Plek.new.find('search')}/documents}) end
def stub_request_for(result_set)
def stub_request_for(result_set) stub_request(:get, /example.com\/unified_search/).to_return(body: result_set) end
def sub_sector_organisations_results
def sub_sector_organisations_results File.read( File.expand_path( "../../../../test/fixtures/sub_sector_organisations.json", __FILE__ ) ) end