Sha256: c2838990413db126676c4dc4d7349069f432efc7205c5bba09ef3e6fee16cc93

Contents?: true

Size: 1.1 KB

Versions: 19

Compression:

Stored size: 1.1 KB

Contents

module USCoreTestKit
  class Generator
    class IGMetadata
      attr_accessor :ig_version, :groups

      def reformatted_version
        @reformatted_version ||= ig_version.delete('.')
      end

      def ordered_groups
        @ordered_groups ||=
          [patient_group] + non_delayed_groups + delayed_groups
      end

      def patient_group
        @patient_group ||=
          groups.find { |group| group.resource == 'Patient' }
      end

      def delayed_groups
        @delayed_groups ||=
          groups.select { |group| group.delayed? }
      end

      def non_delayed_groups
        @non_delayed_groups ||=
          groups.reject { |group| group.delayed? } - [patient_group]
      end

      def delayed_profiles
        @delayed_profiles ||=
          delayed_groups.map(&:profile_url)
      end

      def postprocess_groups(ig_resources)
        groups.each do |group|
          group.add_delayed_references(delayed_profiles, ig_resources)
        end
      end

      def to_hash
        {
          ig_version: ig_version,
          groups: groups.map(&:to_hash)
        }
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
us_core_test_kit-0.4.7 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.4.6 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.4.5 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.4.4 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.4.3 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.4.2 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.4.1 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.4.0 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.3.2 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.3.1 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.3.0 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.2.5 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.2.4 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.2.3 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.2.2 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.2.1 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.2.0 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.1.1 lib/us_core_test_kit/generator/ig_metadata.rb
us_core_test_kit-0.1.0 lib/us_core_test_kit/generator/ig_metadata.rb