Class: DaVinciDTRTestKit::MockAuthorization::AuthorizeEndpoint

Inherits:
Inferno::DSL::SuiteEndpoint
  • Object
show all
Defined in:
lib/davinci_dtr_test_kit/endpoints/mock_authorization/authorize_endpoint.rb

Instance Method Summary collapse

Instance Method Details

#make_responseObject



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/davinci_dtr_test_kit/endpoints/mock_authorization/authorize_endpoint.rb', line 12

def make_response
  if request.params[:redirect_uri].present?
    redirect_uri = "#{request.params[:redirect_uri]}?" \
                   "code=#{SecureRandom.hex}&" \
                   "state=#{request.params[:state]}"
    response.status = 302
    response.headers['Location'] = redirect_uri
  else
    response.status = 400
    response.format = 'application/fhir+json'
    response.body = FHIR::OperationOutcome.new(
      issue: FHIR::OperationOutcome::Issue.new(severity: 'fatal', code: 'required',
                                               details: FHIR::CodeableConcept.new(
                                                 text: 'No redirect_uri provided'
                                               ))
    ).to_json
  end
end

#tagsObject



8
9
10
# File 'lib/davinci_dtr_test_kit/endpoints/mock_authorization/authorize_endpoint.rb', line 8

def tags
  [EHR_AUTHORIZE_TAG]
end

#test_run_identifierObject



4
5
6
# File 'lib/davinci_dtr_test_kit/endpoints/mock_authorization/authorize_endpoint.rb', line 4

def test_run_identifier
  request.params[:client_id]
end