Sha256: 2e184267b85a1753cf841a6a5520bfc20036f006f80aa10346cc3180039ecef1

Contents?: true

Size: 1.08 KB

Versions: 19

Compression:

Stored size: 1.08 KB

Contents

module USCoreTestKit
  class Generator
    class ResourceListGenerator
      class << self
        def generate(ig_metadata, base_output_dir)
          @ig_metadata = ig_metadata

          FileUtils.mkdir_p(base_output_dir)
          File.open(File.join(base_output_dir, base_output_file_name), 'w') { |f| f.write(output) }
        end

        def resource_list          
          @ig_metadata.groups.map(&:resource).uniq
        end

        def resource_list_string
          resource_list.map { |resource| "      '#{resource}'" }.join(",\n")
        end

        def module_name
          "USCore#{@ig_metadata.reformatted_version.upcase}"
        end

        def read_interaction(group_metadata)
          group_metadata.interactions.find { |interaction| interaction[:code] == 'read' }
        end

        def template
          @template ||= File.read(File.join(__dir__, 'templates', 'resource_list.rb.erb'))
        end

        def output
          ERB.new(template).result(binding)
        end

        def base_output_file_name
          "resource_list.rb"
        end
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

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