subscriptions_test_kit 0.9.4 → 0.10.0
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/config/presets/subscription_client_empty_preset.json.erb +15 -0
- data/config/presets/subscription_client_full_resource_preset.json.erb +15 -0
- data/config/presets/subscription_client_id_only_preset.json.erb +15 -0
- data/config/presets/subscription_server_preset_empty.json.erb +23 -0
- data/config/presets/subscription_server_preset_full_resource.json.erb +23 -0
- data/config/presets/subscription_server_preset_id_only.json.erb +23 -0
- data/lib/subscriptions_test_kit/common/notification_conformance_verification.rb +1 -1
- data/lib/subscriptions_test_kit/common/subscription_conformance_verification.rb +16 -7
- data/lib/subscriptions_test_kit/docs/samples/Subscription_empty.json +1 -1
- data/lib/subscriptions_test_kit/docs/samples/Subscription_full-resource.json +1 -1
- data/lib/subscriptions_test_kit/docs/samples/Subscription_id-only.json +1 -1
- data/lib/subscriptions_test_kit/docs/subscriptions_r5_backport_r4_client_suite_description.md +4 -1
- data/lib/subscriptions_test_kit/docs/subscriptions_r5_backport_r4_server_suite_description.md +8 -1
- data/lib/subscriptions_test_kit/endpoints/subscription_status_endpoint.rb +3 -3
- data/lib/subscriptions_test_kit/igs/.keep +0 -0
- data/lib/subscriptions_test_kit/metadata.rb +92 -0
- data/lib/subscriptions_test_kit/requirements/generated/subscriptions-test-kit_requirements_coverage.csv +22 -22
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_client/common/subscription_simulation_utils.rb +2 -2
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_client/workflow/conformance_verification/notification_input_payload_verification_test.rb +0 -1
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_client/workflow/conformance_verification/notification_input_verification_test.rb +0 -1
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_client/workflow/interaction_test.rb +7 -0
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_client/workflow_group.rb +12 -6
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_client_suite.rb +3 -3
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction/creation_response_conformance_test.rb +1 -1
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction/notification_delivery_test.rb +5 -5
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction/subscription_conformance_test.rb +13 -15
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_group.rb +3 -3
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_verification/notification_conformance_test.rb +38 -22
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_verification/notification_presence_test.rb +56 -0
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_verification_group.rb +7 -3
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/subscription_creation.rb +1 -1
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/event_notification_group.rb +4 -3
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/handshake_heartbeat/handshake_conformance_test.rb +3 -0
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/handshake_heartbeat/heartbeat_conformance_test.rb +3 -0
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/handshake_heartbeat_group.rb +1 -1
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/workflow_group.rb +4 -4
- data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server_suite.rb +0 -2
- data/lib/subscriptions_test_kit/version.rb +2 -1
- data/lib/subscriptions_test_kit.rb +1 -0
- metadata +16 -6
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative 'interaction_verification/notification_conformance_test'
|
2
|
+
require_relative 'interaction_verification/notification_presence_test'
|
2
3
|
|
3
4
|
module SubscriptionsTestKit
|
4
5
|
module SubscriptionsR5BackportR4Server
|
@@ -6,13 +7,16 @@ module SubscriptionsTestKit
|
|
6
7
|
id :subscriptions_r4_server_interaction_verification
|
7
8
|
title 'Subscription Workflow Interaction Verification'
|
8
9
|
description %(
|
9
|
-
Inferno
|
10
|
-
|
11
|
-
|
10
|
+
Inferno will verify that the sever communicated at least one notification
|
11
|
+
(handshake, heartbeat, and/or event-notification) back to Inferno
|
12
|
+
related to the created Subscription and that that set of notifications
|
13
|
+
includes a conformant event-notification. Other types of notifications
|
14
|
+
are verified during other tests.
|
12
15
|
)
|
13
16
|
|
14
17
|
run_as_group
|
15
18
|
|
19
|
+
test from: :subscriptions_r4_server_notification_presence
|
16
20
|
test from: :subscriptions_r4_server_notification_conformance
|
17
21
|
end
|
18
22
|
end
|
@@ -6,12 +6,13 @@ module SubscriptionsTestKit
|
|
6
6
|
module SubscriptionsR5BackportR4Server
|
7
7
|
class EventNotificationGroup < Inferno::TestGroup
|
8
8
|
id :subscriptions_r4_server_event_notification
|
9
|
-
title 'Backport Subscription Notification Verification'
|
9
|
+
title 'Backport Subscription Notification Payload Type Verification'
|
10
10
|
description %(
|
11
11
|
Verify that the received Notifications are conformant to the
|
12
12
|
[R4 Topic-Based Subscription Notification Bundle](https://hl7.org/fhir/uv/subscriptions-backport/STU1.1/StructureDefinition-backport-subscription-notification-r4.html)
|
13
|
-
profile, including additional requirements around the
|
14
|
-
options available when specifying the
|
13
|
+
profile, including additional requirements around the payload type. This group contains tests for the three
|
14
|
+
options available when specifying the content level for event notification payloads:
|
15
|
+
`empty`, `id-only`, and `full-resource`.
|
15
16
|
)
|
16
17
|
|
17
18
|
input_order :url, :credentials, :access_token, :empty_subscription_resource,
|
@@ -13,6 +13,9 @@ module SubscriptionsTestKit
|
|
13
13
|
endpoint. After a successful handshake notification has been sent and accepted, the server SHALL update the
|
14
14
|
status to active. This test verifies that the incoming handshake request is a conformant
|
15
15
|
[R4 Topic-Based Subscription Notification Bundle](https://hl7.org/fhir/uv/subscriptions-backport/STU1.1/StructureDefinition-backport-subscription-notification-r4.html).
|
16
|
+
|
17
|
+
Note that all Subscriptions and the associated Handshake notifications received during previously-run tests
|
18
|
+
will be associated with this test and analyzed for conformance.
|
16
19
|
)
|
17
20
|
|
18
21
|
verifies_requirements 'hl7.fhir.uv.subscriptions_1.1.0@14',
|
@@ -11,6 +11,9 @@ module SubscriptionsTestKit
|
|
11
11
|
When a Subscription is created for a REST Hook channel type, the server Server may send notifications of type
|
12
12
|
heartbeat at any time. This test verifies that the incoming heartbeat request is a conformant
|
13
13
|
[R4 Topic-Based Subscription Notification Bundle](https://hl7.org/fhir/uv/subscriptions-backport/STU1.1/StructureDefinition-backport-subscription-notification-r4.html).
|
14
|
+
|
15
|
+
Note that all Subscriptions and the associated Heartbeat notifications received during previously-run tests
|
16
|
+
will be associated with this test and analyzed for conformance.
|
14
17
|
)
|
15
18
|
|
16
19
|
verifies_requirements 'hl7.fhir.uv.subscriptions_1.1.0@14',
|
@@ -7,7 +7,7 @@ module SubscriptionsTestKit
|
|
7
7
|
id :subscriptions_r4_server_handshake_heartbeat
|
8
8
|
title 'Backport Subscription Handshake and Heartbeat Notification Verification'
|
9
9
|
description %(
|
10
|
-
Verify that
|
10
|
+
Verify that all Handshake ane Heartbeat Notifications received during previous tests are conformant to the
|
11
11
|
[R4 Topic-Based Subscription Notification Bundle](https://hl7.org/fhir/uv/subscriptions-backport/STU1.1/StructureDefinition-backport-subscription-notification-r4.html)
|
12
12
|
profile.
|
13
13
|
)
|
data/lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/workflow_group.rb
CHANGED
@@ -8,12 +8,12 @@ module SubscriptionsTestKit
|
|
8
8
|
title 'Demonstrate the subscription workflow'
|
9
9
|
description %(
|
10
10
|
Demonstrate the ability of the server to accept a request for the
|
11
|
-
creation of a FHIR Subscription instance and deliver
|
11
|
+
creation of a FHIR Subscription instance and deliver an event notification
|
12
12
|
for that Subscription. The tester must provide a Subscription instance
|
13
13
|
that the server under test supports. Inferno will act as a client,
|
14
|
-
creating the Subscription and waiting for
|
15
|
-
Inferno will then verify that
|
16
|
-
|
14
|
+
creating the Subscription and waiting for notifications based on it.
|
15
|
+
Inferno will then verify that an event notification has been received
|
16
|
+
for the created Subscription and that the exchange is conformant.
|
17
17
|
)
|
18
18
|
|
19
19
|
run_as_group
|
@@ -6,7 +6,6 @@ require_relative 'subscriptions_r5_backport_r4_server/status_operation_group'
|
|
6
6
|
require_relative 'subscriptions_r5_backport_r4_server/subscription_rejection_group'
|
7
7
|
require_relative '../endpoints/subscription_rest_hook_endpoint'
|
8
8
|
require_relative '../urls'
|
9
|
-
require_relative '../version'
|
10
9
|
|
11
10
|
module SubscriptionsTestKit
|
12
11
|
module SubscriptionsR5BackportR4Server
|
@@ -14,7 +13,6 @@ module SubscriptionsTestKit
|
|
14
13
|
id :subscriptions_r5_backport_r4_server
|
15
14
|
title 'Subscriptions R5 Backport IG v1.1.0 FHIR R4 Server Test Suite'
|
16
15
|
short_title 'Subscriptions R4 Server'
|
17
|
-
version VERSION
|
18
16
|
description File.read(File.join(__dir__, '..', 'docs',
|
19
17
|
'subscriptions_r5_backport_r4_server_suite_description.md'))
|
20
18
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
require_relative 'subscriptions_test_kit/metadata'
|
1
2
|
require_relative 'inferno_requirements_tools/ext/inferno_core/runnable'
|
2
3
|
require_relative 'subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server_suite'
|
3
4
|
require_relative 'subscriptions_test_kit/suites/subscriptions_r5_backport_r4_client_suite'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: subscriptions_test_kit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Karl Naden, Emily Semple, Tom Strassner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-02-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: inferno_core
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.6.4
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.6.4
|
27
27
|
description: Inferno test kit for FHIR R5-style Subscriptions
|
28
28
|
email:
|
29
29
|
- inferno@groups.mitre.org
|
@@ -32,6 +32,12 @@ extensions: []
|
|
32
32
|
extra_rdoc_files: []
|
33
33
|
files:
|
34
34
|
- LICENSE
|
35
|
+
- config/presets/subscription_client_empty_preset.json.erb
|
36
|
+
- config/presets/subscription_client_full_resource_preset.json.erb
|
37
|
+
- config/presets/subscription_client_id_only_preset.json.erb
|
38
|
+
- config/presets/subscription_server_preset_empty.json.erb
|
39
|
+
- config/presets/subscription_server_preset_full_resource.json.erb
|
40
|
+
- config/presets/subscription_server_preset_id_only.json.erb
|
35
41
|
- lib/inferno_requirements_tools/ext/inferno_core/runnable.rb
|
36
42
|
- lib/inferno_requirements_tools/tasks/collect_requirements.rb
|
37
43
|
- lib/inferno_requirements_tools/tasks/requirements_coverage.rb
|
@@ -47,8 +53,10 @@ files:
|
|
47
53
|
- lib/subscriptions_test_kit/endpoints/subscription_read_endpoint.rb
|
48
54
|
- lib/subscriptions_test_kit/endpoints/subscription_rest_hook_endpoint.rb
|
49
55
|
- lib/subscriptions_test_kit/endpoints/subscription_status_endpoint.rb
|
56
|
+
- lib/subscriptions_test_kit/igs/.keep
|
50
57
|
- lib/subscriptions_test_kit/igs/README.md
|
51
58
|
- lib/subscriptions_test_kit/jobs/send_subscription_notifications.rb
|
59
|
+
- lib/subscriptions_test_kit/metadata.rb
|
52
60
|
- lib/subscriptions_test_kit/requirements/generated/subscriptions-test-kit_requirements_coverage.csv
|
53
61
|
- lib/subscriptions_test_kit/requirements/subscriptions-test-kit_out_of_scope_requirements.csv
|
54
62
|
- lib/subscriptions_test_kit/requirements/subscriptions-test-kit_requirements.csv
|
@@ -73,6 +81,7 @@ files:
|
|
73
81
|
- lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction/subscription_conformance_test.rb
|
74
82
|
- lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_group.rb
|
75
83
|
- lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_verification/notification_conformance_test.rb
|
84
|
+
- lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_verification/notification_presence_test.rb
|
76
85
|
- lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/interaction_verification_group.rb
|
77
86
|
- lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/subscription_creation.rb
|
78
87
|
- lib/subscriptions_test_kit/suites/subscriptions_r5_backport_r4_server/common/subscription_status_operation.rb
|
@@ -105,6 +114,7 @@ homepage: https://github.com/inferno-framework/subscriptions-test-kit
|
|
105
114
|
licenses:
|
106
115
|
- Apache-2.0
|
107
116
|
metadata:
|
117
|
+
inferno_test_kit: 'true'
|
108
118
|
homepage_uri: https://github.com/inferno-framework/subscriptions-test-kit
|
109
119
|
source_code_uri: https://github.com/inferno-framework/subscriptions-test-kit
|
110
120
|
post_install_message:
|
@@ -115,14 +125,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
115
125
|
requirements:
|
116
126
|
- - ">="
|
117
127
|
- !ruby/object:Gem::Version
|
118
|
-
version: 3.
|
128
|
+
version: 3.3.6
|
119
129
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
120
130
|
requirements:
|
121
131
|
- - ">="
|
122
132
|
- !ruby/object:Gem::Version
|
123
133
|
version: '0'
|
124
134
|
requirements: []
|
125
|
-
rubygems_version: 3.
|
135
|
+
rubygems_version: 3.5.22
|
126
136
|
signing_key:
|
127
137
|
specification_version: 4
|
128
138
|
summary: Subscriptions Test Kit
|