Sha256: 63374fd6ba9ee6530e6d84aca9e8250912e87bf3f7aa1cf84bea5f9a6d7ab0e3
Contents?: true
Size: 1.76 KB
Versions: 7
Compression:
Stored size: 1.76 KB
Contents
require_relative 'test_group' require_relative '../dsl/runnable' require_relative '../repositories/test_groups' require_relative '../repositories/test_suites' module Inferno module Entities # A `TestSuite` represents a packaged group of tests, usually for a # single Implementation Guide class TestSuite extend DSL::Runnable extend DSL::FHIRClient::ClassMethods extend DSL::HTTPClient::ClassMethods include DSL::FHIRValidation class << self extend Forwardable def_delegator :default_group, :test def default_group return @default_group if @default_group @default_group = Class.new(TestGroup) children << @default_group @default_group end def repository Inferno::Repositories::TestSuites.new end def groups children.select { |child| child < Inferno::Entities::TestGroup } end # Methods to configure Inferno::DSL::Runnable def group(...) child_metadata(group_metadata) define_child(...) end def group_metadata { class: TestGroup, repo: Inferno::Repositories::TestGroups.new } end def reference_hash { test_suite_id: id } end def find_validator(validator_name) validator = fhir_validators[validator_name] return validator if validator raise Exceptions::ValidatorNotFoundException, validator_name unless validator_name == :default fhir_validators[:default] = Inferno::DSL::FHIRValidation::Validator.new { |v| v.url default_validator_url } end end end end TestSuite = Entities::TestSuite end
Version data entries
7 entries across 7 versions & 1 rubygems