davinci_pas_test_kit 0.12.0 → 0.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/davinci_pas_test_kit/client_suite.rb +24 -0
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_approval_submit_test.rb +29 -1
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_denial_submit_test.rb +27 -4
- data/lib/davinci_pas_test_kit/{generated/v2.0.1/client_tests/client_pended_pas_inquiry_request_bundle_validation_test.rb → custom_groups/v2.0.1/client_tests/pas_client_inquire_request_bundle_validation_test.rb} +22 -20
- data/lib/davinci_pas_test_kit/{generated/v2.0.1/client_tests/client_denial_pas_response_bundle_validation_test.rb → custom_groups/v2.0.1/client_tests/pas_client_inquire_response_bundle_validation_test.rb} +34 -21
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_submit_test.rb +124 -5
- data/lib/davinci_pas_test_kit/{generated/v2.0.1/client_tests/client_pas_request_bundle_validation_test.rb → custom_groups/v2.0.1/client_tests/pas_client_request_bundle_validation_test.rb} +22 -20
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/{pas_client_approval_submit_response_attest.rb → pas_client_response_attest.rb} +26 -9
- data/lib/davinci_pas_test_kit/{generated/v2.0.1/client_tests/client_pended_pas_response_bundle_validation_test.rb → custom_groups/v2.0.1/client_tests/pas_client_response_bundle_validation_test.rb} +44 -20
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_subscription_create_test.rb +49 -0
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_subscription_pas_conformance_test.rb +48 -0
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_approval_group.rb +21 -9
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_authentication_group.rb +2 -2
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_denial_group.rb +21 -22
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_pended_group.rb +97 -31
- data/lib/davinci_pas_test_kit/docs/client_suite_description_v201.md +213 -72
- data/lib/davinci_pas_test_kit/endpoints/claim_endpoint.rb +85 -134
- data/lib/davinci_pas_test_kit/endpoints/subscription_create_endpoint.rb +96 -0
- data/lib/davinci_pas_test_kit/endpoints/subscription_status_endpoint.rb +90 -0
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/metadata.yml +0 -2
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/server_pas_inquiry_request_bundle_validation_test.rb +3 -1
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/server_pas_inquiry_response_bundle_validation_test.rb +2 -1
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/metadata.yml +0 -2
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/server_pas_request_bundle_validation_test.rb +3 -1
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/metadata.yml +0 -4
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/server_pas_response_bundle_validation_test.rb +2 -1
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_denial_use_case_group.rb +1 -1
- data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_pended_use_case_group.rb +6 -5
- data/lib/davinci_pas_test_kit/generated/v2.0.1/server_suite.rb +1 -0
- data/lib/davinci_pas_test_kit/generator/group_generator.rb +9 -8
- data/lib/davinci_pas_test_kit/generator/group_metadata_extractor.rb +7 -3
- data/lib/davinci_pas_test_kit/generator/templates/suite.rb.erb +1 -0
- data/lib/davinci_pas_test_kit/generator/validation_test_generator.rb +19 -56
- data/lib/davinci_pas_test_kit/generator/value_extractor.rb +4 -1
- data/lib/davinci_pas_test_kit/generator.rb +1 -1
- data/lib/davinci_pas_test_kit/jobs/send_pas_subscription_notification.rb +136 -0
- data/lib/davinci_pas_test_kit/jobs/send_subscription_handshake.rb +139 -0
- data/lib/davinci_pas_test_kit/pas_bundle_validation.rb +8 -7
- data/lib/davinci_pas_test_kit/response_generator.rb +397 -0
- data/lib/davinci_pas_test_kit/tags.rb +9 -0
- data/lib/davinci_pas_test_kit/urls.rb +8 -0
- data/lib/davinci_pas_test_kit/user_input_response.rb +11 -8
- data/lib/davinci_pas_test_kit/validation_test.rb +0 -1
- data/lib/davinci_pas_test_kit/version.rb +2 -2
- metadata +30 -14
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_denial_submit_response_attest.rb +0 -38
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_inquire_response_attest.rb +0 -39
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_inquire_test.rb +0 -35
- data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_submit_response_attest.rb +0 -39
- data/lib/davinci_pas_test_kit/generator/templates/validation_client.rb.erb +0 -50
@@ -1,39 +0,0 @@
|
|
1
|
-
require_relative '../../../urls'
|
2
|
-
|
3
|
-
module DaVinciPASTestKit
|
4
|
-
module DaVinciPASV201
|
5
|
-
class PASClientPendedInquireResponseAttest < Inferno::Test
|
6
|
-
include URLs
|
7
|
-
|
8
|
-
id :pas_client_v201_pended_inquire_response_attest
|
9
|
-
title 'Check that the client registers the request as approved (Attestation)'
|
10
|
-
description %(
|
11
|
-
This test provides the tester an opportunity to observe their client following
|
12
|
-
the receipt of the inquiry response with a final decision and attest that users
|
13
|
-
are able to determine that the response has been approved in full.
|
14
|
-
)
|
15
|
-
input :access_token,
|
16
|
-
title: 'Access Token',
|
17
|
-
description: %(
|
18
|
-
Access token that the client will provide in the Authorization header of each request
|
19
|
-
made during this test.
|
20
|
-
)
|
21
|
-
|
22
|
-
run do
|
23
|
-
wait(
|
24
|
-
identifier: access_token,
|
25
|
-
message: %(
|
26
|
-
**Pended Workflow Test**:
|
27
|
-
|
28
|
-
I attest that the client system displays the submitted claim as 'approved' meaning that
|
29
|
-
the user can proceed with ordering or providing the requested service.
|
30
|
-
|
31
|
-
[Click here](#{resume_pass_url}?token=#{access_token}) if the above statement is **true**.
|
32
|
-
|
33
|
-
[Click here](#{resume_fail_url}?token=#{access_token}) if the above statement is **false**.
|
34
|
-
)
|
35
|
-
)
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_inquire_test.rb
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
require_relative '../../../urls'
|
2
|
-
|
3
|
-
module DaVinciPASTestKit
|
4
|
-
module DaVinciPASV201
|
5
|
-
class PASClientPendedInquireTest < Inferno::Test
|
6
|
-
include URLs
|
7
|
-
|
8
|
-
id :pas_client_v201_pended_inquire_test
|
9
|
-
title 'Client inquires about a pended claim using the $inquire operation'
|
10
|
-
description %(
|
11
|
-
Inferno will wait for a prior authorization inquiry request
|
12
|
-
from the client. Upon receipt, Inferno will generate a response
|
13
|
-
with an approved status and respond with it.
|
14
|
-
)
|
15
|
-
input :access_token,
|
16
|
-
title: 'Access Token',
|
17
|
-
description: %(
|
18
|
-
Access token that the client will provide in the Authorization header of each request
|
19
|
-
made during this test.
|
20
|
-
)
|
21
|
-
|
22
|
-
run do
|
23
|
-
wait(
|
24
|
-
identifier: access_token,
|
25
|
-
message: %(
|
26
|
-
**Pended Workflow Test**:
|
27
|
-
|
28
|
-
Submit a PAS claim inquiry request for the pended prior authorization request to `#{inquire_url}`.
|
29
|
-
An approval response generated by Inferno will be returned.
|
30
|
-
)
|
31
|
-
)
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
require_relative '../../../urls'
|
2
|
-
|
3
|
-
module DaVinciPASTestKit
|
4
|
-
module DaVinciPASV201
|
5
|
-
class PASClientPendedSubmitResponseAttest < Inferno::Test
|
6
|
-
include URLs
|
7
|
-
|
8
|
-
id :pas_client_v201_pended_submit_response_attest
|
9
|
-
title 'Check that the client registers the request as pended (Attestation)'
|
10
|
-
description %(
|
11
|
-
This test provides the tester an opportunity to observe their client following
|
12
|
-
the receipt of the pended response and attest that users are able to determine
|
13
|
-
that the response has been pended and a decision will be forth coming.
|
14
|
-
)
|
15
|
-
input :access_token,
|
16
|
-
title: 'Access Token',
|
17
|
-
description: %(
|
18
|
-
Access token that the client will provide in the Authorization header of each request
|
19
|
-
made during this test.
|
20
|
-
)
|
21
|
-
|
22
|
-
run do
|
23
|
-
wait(
|
24
|
-
identifier: access_token,
|
25
|
-
message: %(
|
26
|
-
**Pended Workflow Test**:
|
27
|
-
|
28
|
-
I attest that the client system displays the submitted claim as 'pended' meaning that
|
29
|
-
a final decision has not yet been made.
|
30
|
-
|
31
|
-
[Click here](#{resume_pass_url}?token=#{access_token}) if the above statement is **true**.
|
32
|
-
|
33
|
-
[Click here](#{resume_fail_url}?token=#{access_token}) if the above statement is **false**.
|
34
|
-
)
|
35
|
-
)
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
@@ -1,50 +0,0 @@
|
|
1
|
-
require_relative '../../../pas_bundle_validation'
|
2
|
-
require_relative '../../../<% if request_type.include?('response') %>user_input_response'<% else %>urls'<% end %>
|
3
|
-
|
4
|
-
module DaVinciPASTestKit
|
5
|
-
module <%= module_name %>
|
6
|
-
class <%= class_name %> < Inferno::Test
|
7
|
-
include DaVinciPASTestKit::PasBundleValidation
|
8
|
-
include <% if request_type.include?('response') %>UserInputResponse<% else %>URLs<% end %>
|
9
|
-
|
10
|
-
id :<%= test_id %>
|
11
|
-
title '<%= title %>'
|
12
|
-
description %(
|
13
|
-
<%=description.strip.gsub("\n", "\n" + " "*8) %>
|
14
|
-
)
|
15
|
-
|
16
|
-
def resource_type
|
17
|
-
'<%= resource_type %>'
|
18
|
-
end
|
19
|
-
|
20
|
-
def request_type
|
21
|
-
'<%= request_type.split('_').first %>'
|
22
|
-
end
|
23
|
-
|
24
|
-
run do<% if request_type.include?('request') %><% type = request_type.split('_').first == 'submit' ? 'submit' : 'inquire' %>
|
25
|
-
assert request.url == <%= type %>_url,
|
26
|
-
"Request made to wrong URL: #{request.url}. Should instead be to #{<%= type %>_url}"
|
27
|
-
|
28
|
-
validate_pas_bundle_json(
|
29
|
-
request.request_body,
|
30
|
-
'<%= profile_url %>',
|
31
|
-
'<%= profile_version %>',
|
32
|
-
request_type,
|
33
|
-
'request_bundle',
|
34
|
-
message: 'The <%= type%> Bundle request provided for the Claim/$<%= type%> operation is invalid:'
|
35
|
-
)
|
36
|
-
<% else %>
|
37
|
-
check_user_inputted_response :<%= workflow %>_json_response
|
38
|
-
validate_pas_bundle_json(
|
39
|
-
<%= workflow %>_json_response,
|
40
|
-
'<%= profile_url %>',
|
41
|
-
'<%= profile_version %>',
|
42
|
-
request_type,
|
43
|
-
'response_bundle',
|
44
|
-
skips: true,
|
45
|
-
message: "Invalid input for '#{input_title(:<%= workflow %>_json_response)}':"
|
46
|
-
)<% end %>
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|