Class TestPlanParser

java.lang.Object
org.fhirfrog.frog.testplan.TestPlanParser

public class TestPlanParser extends Object
Parser for fhir-frog TestPlans.

A TestPlan is a real FHIR resource: a Basic instance profiled against http://fhirfrog.org/fhir/StructureDefinition/frog-test-plan (see fhir-frog-library/src/main/fsh/input/fsh/FrogTestPlan.fsh for the full profile and design rationale - a Basic-backed backport of FHIR R5's own, still-status=draft/FMM-0 TestPlan resource, following the same pattern HL7's Subscriptions R4 Backport IG uses for R5-only resources with no R4 equivalent). Parses via HAPI's own FhirContext, not ad hoc JSON mapping, so a TestPlan file is a genuine, independently-validatable FHIR resource.

Extracted into the same TestPlanResource/TestPlanResource.TestCase/ TestPlanResource.TestSuite shape the rest of fhir-frog-testplan (TestPlanProvider, DependencyResolver, CycleDetector) already consumes, so only this class changed - the file *format* on disk is now real FHIR, the in-memory object model downstream of parsing is unchanged.

Required fields (validated after parsing, mirroring the profile's own cardinality):

  • TestPlan: Basic.id
  • TestCase: id, name, testScriptUrl (the frog-test-run.script.source extension)
  • TestSuite: id, name, testPlanUrl (the testPlan extension)

Thread-safety: Thread-safe. FhirContext is expensive to create and is reused across calls (matching HAPI's own guidance that a single FhirContext should be shared/cached).