Module: USCoreTestKit::ReadTest
- Included in:
- USCoreV311::AllergyIntoleranceReadTest, USCoreV311::BodyheightReadTest, USCoreV311::BodytempReadTest, USCoreV311::BodyweightReadTest, USCoreV311::BpReadTest, USCoreV311::CarePlanReadTest, USCoreV311::CareTeamReadTest, USCoreV311::ConditionReadTest, USCoreV311::DeviceReadTest, USCoreV311::DiagnosticReportLabReadTest, USCoreV311::DiagnosticReportNoteReadTest, USCoreV311::DocumentReferenceReadTest, USCoreV311::EncounterReadTest, USCoreV311::GoalReadTest, USCoreV311::HeadCircumferenceReadTest, USCoreV311::HeartrateReadTest, USCoreV311::ImmunizationReadTest, USCoreV311::MedicationRequestReadTest, USCoreV311::ObservationLabReadTest, USCoreV311::OrganizationReadTest, USCoreV311::PatientReadTest, USCoreV311::PediatricBmiForAgeReadTest, USCoreV311::PediatricWeightForHeightReadTest, USCoreV311::PractitionerReadTest, USCoreV311::ProcedureReadTest, USCoreV311::ProvenanceReadTest, USCoreV311::PulseOximetryReadTest, USCoreV311::ResprateReadTest, USCoreV311::SmokingstatusReadTest, USCoreV400::AllergyIntoleranceReadTest, USCoreV400::BloodPressureReadTest, USCoreV400::BmiReadTest, USCoreV400::BodyHeightReadTest, USCoreV400::BodyTemperatureReadTest, USCoreV400::BodyWeightReadTest, USCoreV400::CarePlanReadTest, USCoreV400::CareTeamReadTest, USCoreV400::ConditionReadTest, USCoreV400::DeviceReadTest, USCoreV400::DiagnosticReportLabReadTest, USCoreV400::DiagnosticReportNoteReadTest, USCoreV400::DocumentReferenceReadTest, USCoreV400::EncounterReadTest, USCoreV400::GoalReadTest, USCoreV400::HeadCircumferencePercentileReadTest, USCoreV400::HeadCircumferenceReadTest, USCoreV400::HeartRateReadTest, USCoreV400::ImmunizationReadTest, USCoreV400::MedicationRequestReadTest, USCoreV400::ObservationLabReadTest, USCoreV400::OrganizationReadTest, USCoreV400::PatientReadTest, USCoreV400::PediatricBmiForAgeReadTest, USCoreV400::PediatricWeightForHeightReadTest, USCoreV400::PractitionerReadTest, USCoreV400::ProcedureReadTest, USCoreV400::ProvenanceReadTest, USCoreV400::PulseOximetryReadTest, USCoreV400::RespiratoryRateReadTest, USCoreV400::SmokingstatusReadTest, USCoreV501::AllergyIntoleranceReadTest, USCoreV501::BloodPressureReadTest, USCoreV501::BmiReadTest, USCoreV501::BodyHeightReadTest, USCoreV501::BodyTemperatureReadTest, USCoreV501::BodyWeightReadTest, USCoreV501::CarePlanReadTest, USCoreV501::CareTeamReadTest, USCoreV501::ConditionEncounterDiagnosisReadTest, USCoreV501::ConditionProblemsHealthConcernsReadTest, USCoreV501::DeviceReadTest, USCoreV501::DiagnosticReportLabReadTest, USCoreV501::DiagnosticReportNoteReadTest, USCoreV501::DocumentReferenceReadTest, USCoreV501::EncounterReadTest, USCoreV501::GoalReadTest, USCoreV501::HeadCircumferencePercentileReadTest, USCoreV501::HeadCircumferenceReadTest, USCoreV501::HeartRateReadTest, USCoreV501::ImmunizationReadTest, USCoreV501::MedicationRequestReadTest, USCoreV501::ObservationClinicalTestReadTest, USCoreV501::ObservationImagingReadTest, USCoreV501::ObservationLabReadTest, USCoreV501::ObservationSdohAssessmentReadTest, USCoreV501::ObservationSexualOrientationReadTest, USCoreV501::ObservationSocialHistoryReadTest, USCoreV501::OrganizationReadTest, USCoreV501::PatientReadTest, USCoreV501::PediatricBmiForAgeReadTest, USCoreV501::PediatricWeightForHeightReadTest, USCoreV501::PractitionerReadTest, USCoreV501::PractitionerRoleReadTest, USCoreV501::ProcedureReadTest, USCoreV501::ProvenanceReadTest, USCoreV501::PulseOximetryReadTest, USCoreV501::QuestionnaireResponseReadTest, USCoreV501::RelatedPersonReadTest, USCoreV501::RespiratoryRateReadTest, USCoreV501::ServiceRequestReadTest, USCoreV501::SmokingstatusReadTest, USCoreV610::AllergyIntoleranceReadTest, USCoreV610::BloodPressureReadTest, USCoreV610::BmiReadTest, USCoreV610::BodyHeightReadTest, USCoreV610::BodyTemperatureReadTest, USCoreV610::BodyWeightReadTest, USCoreV610::CarePlanReadTest, USCoreV610::CareTeamReadTest, USCoreV610::ConditionEncounterDiagnosisReadTest, USCoreV610::ConditionProblemsHealthConcernsReadTest, USCoreV610::CoverageReadTest, USCoreV610::DeviceReadTest, USCoreV610::DiagnosticReportLabReadTest, USCoreV610::DiagnosticReportNoteReadTest, USCoreV610::DocumentReferenceReadTest, USCoreV610::EncounterReadTest, USCoreV610::GoalReadTest, USCoreV610::HeadCircumferencePercentileReadTest, USCoreV610::HeadCircumferenceReadTest, USCoreV610::HeartRateReadTest, USCoreV610::ImmunizationReadTest, USCoreV610::MedicationDispenseReadTest, USCoreV610::MedicationRequestReadTest, USCoreV610::ObservationClinicalResultReadTest, USCoreV610::ObservationLabReadTest, USCoreV610::ObservationOccupationReadTest, USCoreV610::ObservationPregnancyintentReadTest, USCoreV610::ObservationPregnancystatusReadTest, USCoreV610::ObservationScreeningAssessmentReadTest, USCoreV610::ObservationSexualOrientationReadTest, USCoreV610::OrganizationReadTest, USCoreV610::PatientReadTest, USCoreV610::PediatricBmiForAgeReadTest, USCoreV610::PediatricWeightForHeightReadTest, USCoreV610::PractitionerReadTest, USCoreV610::PractitionerRoleReadTest, USCoreV610::ProcedureReadTest, USCoreV610::ProvenanceReadTest, USCoreV610::PulseOximetryReadTest, USCoreV610::QuestionnaireResponseReadTest, USCoreV610::RelatedPersonReadTest, USCoreV610::RespiratoryRateReadTest, USCoreV610::ServiceRequestReadTest, USCoreV610::SimpleObservationReadTest, USCoreV610::SmokingstatusReadTest, USCoreV610::SpecimenReadTest, USCoreV700::AllergyIntoleranceReadTest, USCoreV700::AverageBloodPressureReadTest, USCoreV700::BloodPressureReadTest, USCoreV700::BmiReadTest, USCoreV700::BodyHeightReadTest, USCoreV700::BodyTemperatureReadTest, USCoreV700::BodyWeightReadTest, USCoreV700::CareExperiencePreferenceReadTest, USCoreV700::CarePlanReadTest, USCoreV700::CareTeamReadTest, USCoreV700::ConditionEncounterDiagnosisReadTest, USCoreV700::ConditionProblemsHealthConcernsReadTest, USCoreV700::CoverageReadTest, USCoreV700::DeviceReadTest, USCoreV700::DiagnosticReportLabReadTest, USCoreV700::DiagnosticReportNoteReadTest, USCoreV700::DocumentReferenceReadTest, USCoreV700::EncounterReadTest, USCoreV700::GoalReadTest, USCoreV700::HeadCircumferencePercentileReadTest, USCoreV700::HeadCircumferenceReadTest, USCoreV700::HeartRateReadTest, USCoreV700::ImmunizationReadTest, USCoreV700::LocationReadTest, USCoreV700::MedicationDispenseReadTest, USCoreV700::MedicationRequestReadTest, USCoreV700::ObservationClinicalResultReadTest, USCoreV700::ObservationLabReadTest, USCoreV700::ObservationOccupationReadTest, USCoreV700::ObservationPregnancyintentReadTest, USCoreV700::ObservationPregnancystatusReadTest, USCoreV700::ObservationScreeningAssessmentReadTest, USCoreV700::ObservationSexualOrientationReadTest, USCoreV700::OrganizationReadTest, USCoreV700::PatientReadTest, USCoreV700::PediatricBmiForAgeReadTest, USCoreV700::PediatricWeightForHeightReadTest, USCoreV700::PractitionerReadTest, USCoreV700::PractitionerRoleReadTest, USCoreV700::ProcedureReadTest, USCoreV700::ProvenanceReadTest, USCoreV700::PulseOximetryReadTest, USCoreV700::QuestionnaireResponseReadTest, USCoreV700::RelatedPersonReadTest, USCoreV700::RespiratoryRateReadTest, USCoreV700::ServiceRequestReadTest, USCoreV700::SimpleObservationReadTest, USCoreV700::SmokingstatusReadTest, USCoreV700::SpecimenReadTest, USCoreV700::TreatmentInterventionPreferenceReadTest
- Defined in:
- lib/us_core_test_kit/read_test.rb
Instance Method Summary collapse
- #all_scratch_resources ⇒ Object
- #bad_resource_id_message(expected_id) ⇒ Object
- #no_resources_skip_message ⇒ Object
- #perform_read_test(resources, reply_handler = nil) ⇒ Object
- #read_and_validate(resource_to_read) ⇒ Object
- #readable_resources(resources) ⇒ Object
- #resource_class ⇒ Object
- #resource_id(resource) ⇒ Object
Instance Method Details
#all_scratch_resources ⇒ Object
3 4 5 |
# File 'lib/us_core_test_kit/read_test.rb', line 3 def all_scratch_resources scratch_resources[:all] ||= [] end |
#bad_resource_id_message(expected_id) ⇒ Object
54 55 56 |
# File 'lib/us_core_test_kit/read_test.rb', line 54 def (expected_id) "Expected resource to have id: `#{expected_id.inspect}`, but found `#{resource.id.inspect}`" end |
#no_resources_skip_message ⇒ Object
49 50 51 52 |
# File 'lib/us_core_test_kit/read_test.rb', line 49 def "No #{resource_type} resources appear to be available. " \ 'Please use patients with more information.' end |
#perform_read_test(resources, reply_handler = nil) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/us_core_test_kit/read_test.rb', line 7 def perform_read_test(resources, reply_handler = nil) skip_if resources.blank?, resources_to_read = readable_resources(resources) assert resources_to_read.present?, "No #{resource_type} id found." if config.[:read_all_resources] resources_to_read.each do |resource| read_and_validate(resource) end else read_and_validate(resources_to_read.first) end end |
#read_and_validate(resource_to_read) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/us_core_test_kit/read_test.rb', line 31 def read_and_validate(resource_to_read) id = resource_id(resource_to_read) fhir_read resource_type, id assert_response_status(200) assert_resource_type(resource_type) assert resource.id.present? && resource.id == id, (id) if resource_to_read.is_a? FHIR::Reference all_scratch_resources << resource end end |
#readable_resources(resources) ⇒ Object
23 24 25 26 27 28 29 |
# File 'lib/us_core_test_kit/read_test.rb', line 23 def readable_resources(resources) resources .select { |resource| resource.is_a?(resource_class) || resource.is_a?(FHIR::Reference) } .select { |resource| (resource.is_a?(FHIR::Reference) ? resource.reference.split('/').last : resource.id).present? } .compact .uniq { |resource| resource.is_a?(FHIR::Reference) ? resource.reference.split('/').last : resource.id } end |
#resource_class ⇒ Object
58 59 60 |
# File 'lib/us_core_test_kit/read_test.rb', line 58 def resource_class FHIR.const_get(resource_type) end |
#resource_id(resource) ⇒ Object
45 46 47 |
# File 'lib/us_core_test_kit/read_test.rb', line 45 def resource_id(resource) resource.is_a?(FHIR::Reference) ? resource.reference.split('/').last : resource.id end |