Sha256: d3d8ebc3ffa520f766812ab0f5b06f09318940fa8174222f44767bc3b19dda23
Contents?: true
Size: 1 KB
Versions: 8
Compression:
Stored size: 1 KB
Contents
# frozen_string_literal: true module BulkDataTestKit module ExportKickOffPerformer def perform_export_kick_off_request(use_token: true, params: {}, url: '') skip_if use_token && bearer_token.blank?, 'Could not verify this functionality when bearer token is not set' headers = { accept: 'application/fhir+json', prefer: 'respond-async' } headers.merge!({ authorization: "Bearer #{bearer_token}" }) if use_token param_str = params.map { |k, v| URI.encode_www_form(k => v) }.join('&') url.concat("?#{param_str}") unless param_str.empty? get(url, client: :bulk_server, name: :export, headers:) end def delete_export_kick_off_request polling_url = request&.response_header('content-location')&.value assert polling_url.present?, 'Export response header did not include "Content-Location"' headers = { accept: 'application/json', authorization: "Bearer #{bearer_token}" } delete(polling_url, headers:) assert_response_status(202) end end end
Version data entries
8 entries across 8 versions & 1 rubygems