Module: DaVinciPASTestKit::PASSubscriptionVerification

Included in:
DaVinciPASV201::PASServerSubscriptionInputConformance, DaVinciPASV221::PASServerSubscriptionInputConformance, SubscriptionPASConformanceTest
Defined in:
lib/davinci_pas_test_kit/cross_suite/pas_subscription_verification.rb

Constant Summary collapse

PAS_SUBSCRIPTION_PROFILE =
'http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-subscription'.freeze
PAS_SUBSCRIPTION_TOPIC =
'http://hl7.org/fhir/us/davinci-pas/SubscriptionTopic/PASSubscriptionTopic'.freeze
BACKPORT_FILTER_CRITERIA_URL =
'http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-filter-criteria'.freeze

Instance Method Summary collapse

Instance Method Details

#verify_pas_subscription(subscription_json_str, ig_version: 'v2.0.1') ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/davinci_pas_test_kit/cross_suite/pas_subscription_verification.rb', line 8

def verify_pas_subscription(subscription_json_str, ig_version: 'v2.0.1')
  assert_valid_json(subscription_json_str)
  subscription = JSON.parse(subscription_json_str)

  if ig_version == 'v2.0.1'
    verify_pas_subscription_v201(subscription)
  else
    verify_pas_subscription_v221(subscription)
  end

  assert messages.none? { |msg| msg[:type] == 'error' },
         'The Subscription does not conform to PAS requirements - see messages for details.'
end