puppet-retrospec 1.7.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.ruby-version +1 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +3 -1
- data/lib/retrospec/plugins/v1/plugin/generators/base_generator.rb +36 -4
- data/lib/retrospec/plugins/v1/plugin/generators/data_type_generator.rb +59 -0
- data/lib/retrospec/plugins/v1/plugin/generators/resource_base_generator.rb +11 -36
- data/lib/retrospec/plugins/v1/plugin/generators/task_generator.rb +0 -4
- data/lib/retrospec/plugins/v1/plugin/generators/type_generator.rb +1 -1
- data/lib/retrospec/plugins/v1/plugin/version.rb +1 -1
- data/spec/fixtures/fixture_modules/one_resource_module/types/ext/sudoers_entry.pp +1 -0
- data/spec/fixtures/fixture_modules/one_resource_module/types/sudoers_entry.pp +1 -0
- data/spec/fixtures/fixture_modules/sample_module/types/ext/sudoers_entry.pp +1 -0
- data/spec/fixtures/fixture_modules/sample_module/types/sudoers_entry.pp +1 -0
- data/spec/unit/generators/data_type_generator_spec.rb +61 -0
- data/spec/unit/generators/hostclass_generator_spec.rb +0 -2
- data/spec/unit/generators/resource_base_generator_spec.rb +6 -1
- metadata +8 -1
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: c5281f0e925c582ae6b13d860d21a9121f2544b1817feb8de0bd7ca443f73208
         | 
| 4 | 
            +
              data.tar.gz: 256827372f2b26f19ac30c9b9d679a1d419977207fa7ed5141da0d7ae5a05c6a
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 847d7ecdb5aa7b16b9855491e174b97e126cb23958698fd5f9c6a08a1855bbe8e47d56aba88ef0f12b45f72bed9228e8f6db7ab191f83d4f0c3ec3de654b509d
         | 
| 7 | 
            +
              data.tar.gz: fbb3390ab4b005fcd13f40cc0b05d24974be2bac7db58b4c04b3c04c88da3b9b159b607589088a4388c474df3153c37fcfb42b58b47fde20aa7f6caed602d5af
         | 
    
        data/.ruby-version
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            2.5.1
         | 
    
        data/Gemfile
    CHANGED
    
    
    
        data/Gemfile.lock
    CHANGED
    
    | @@ -8,7 +8,7 @@ GIT | |
| 8 8 | 
             
            PATH
         | 
| 9 9 | 
             
              remote: .
         | 
| 10 10 | 
             
              specs:
         | 
| 11 | 
            -
                puppet-retrospec (1. | 
| 11 | 
            +
                puppet-retrospec (1.8.0)
         | 
| 12 12 | 
             
                  awesome_print
         | 
| 13 13 | 
             
                  facets
         | 
| 14 14 | 
             
                  optimist (~> 3.0.0)
         | 
| @@ -49,6 +49,7 @@ GEM | |
| 49 49 | 
             
                  method_source (~> 0.9.0)
         | 
| 50 50 | 
             
                rainbow (3.0.0)
         | 
| 51 51 | 
             
                rake (12.3.2)
         | 
| 52 | 
            +
                rb-readline (0.5.5)
         | 
| 52 53 | 
             
                rdoc (3.12.2)
         | 
| 53 54 | 
             
                  json (~> 1.4)
         | 
| 54 55 | 
             
                rspec (3.8.0)
         | 
| @@ -91,6 +92,7 @@ DEPENDENCIES | |
| 91 92 | 
             
              puppet (= 4.10.8)!
         | 
| 92 93 | 
             
              puppet-retrospec!
         | 
| 93 94 | 
             
              rake
         | 
| 95 | 
            +
              rb-readline
         | 
| 94 96 | 
             
              rdoc (~> 3.12)
         | 
| 95 97 | 
             
              retrospec!
         | 
| 96 98 | 
             
              rspec (~> 3.2)
         | 
| @@ -46,6 +46,42 @@ module Retrospec | |
| 46 46 | 
             
                      raise NotImplementedError
         | 
| 47 47 | 
             
                    end
         | 
| 48 48 |  | 
| 49 | 
            +
                    # generates a file path for spec tests based on the resource name.  An added option
         | 
| 50 | 
            +
                    # is to generate directory names for each parent resource as a default option
         | 
| 51 | 
            +
                    def item_spec_path
         | 
| 52 | 
            +
                      file_name = generate_file_name(item_name.downcase)
         | 
| 53 | 
            +
                      path = generate_path("#{file_name}_spec.rb", item_name)
         | 
| 54 | 
            +
                      File.join(spec_path, path )
         | 
| 55 | 
            +
                    end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
                    # returns the base filename of the type
         | 
| 58 | 
            +
                    def generate_file_name(iname)
         | 
| 59 | 
            +
                      tokens = iname.split('::')
         | 
| 60 | 
            +
                      file_name = tokens.pop
         | 
| 61 | 
            +
                    end
         | 
| 62 | 
            +
             | 
| 63 | 
            +
                    # @return [String] - a generated path
         | 
| 64 | 
            +
                    # @param file_name - the base name of the file to create
         | 
| 65 | 
            +
                    # @param iname - the type name or name of item
         | 
| 66 | 
            +
                    def generate_path(file_name, iname = item_name)
         | 
| 67 | 
            +
                      tokens = iname.split('::')
         | 
| 68 | 
            +
                      # if there are only two tokens ie. tomcat::params we dont need to create a subdirectory
         | 
| 69 | 
            +
                      if tokens.count > 2
         | 
| 70 | 
            +
                        # this is a deep level resource ie. tomcat::config::server::connector
         | 
| 71 | 
            +
                        # however we don't need the tomcat directory so we can just remove it
         | 
| 72 | 
            +
                        # this should leave us with config/server/connector_spec.rb
         | 
| 73 | 
            +
                        tokens.delete_at(0)
         | 
| 74 | 
            +
                        # remove the last token since its the class name
         | 
| 75 | 
            +
                        tokens.pop
         | 
| 76 | 
            +
                        # so lets make a directory structure out of it
         | 
| 77 | 
            +
                        dir_name = File.join(tokens) # config/server
         | 
| 78 | 
            +
                        dir_name = File.join(dir_name, file_name) # spec/classes/tomcat/config/server
         | 
| 79 | 
            +
                      else
         | 
| 80 | 
            +
                        dir_name = File.join(file_name)
         | 
| 81 | 
            +
                      end
         | 
| 82 | 
            +
                      dir_name.downcase
         | 
| 83 | 
            +
                    end
         | 
| 84 | 
            +
             | 
| 49 85 | 
             
                    # run is the main method that gets called automatically
         | 
| 50 86 | 
             
                    def run
         | 
| 51 87 | 
             
                      generate_lib_files
         | 
| @@ -59,10 +95,6 @@ module Retrospec | |
| 59 95 | 
             
                      File.join(lib_path, "#{item_name}.rb")
         | 
| 60 96 | 
             
                    end
         | 
| 61 97 |  | 
| 62 | 
            -
                    def item_spec_path
         | 
| 63 | 
            -
                      File.join(spec_path, "#{item_name}_spec.rb")
         | 
| 64 | 
            -
                    end
         | 
| 65 | 
            -
             | 
| 66 98 | 
             
                    def spec_path
         | 
| 67 99 | 
             
                      File.join(module_path, 'spec', 'unit', 'puppet', plural_name)
         | 
| 68 100 | 
             
                    end
         | 
| @@ -0,0 +1,59 @@ | |
| 1 | 
            +
            # require 'retrospec/plugins/v1/module_helpers'
         | 
| 2 | 
            +
            # require 'retrospec/plugins/v1'
         | 
| 3 | 
            +
            require_relative 'resource_base_generator'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module Retrospec
         | 
| 6 | 
            +
              module Puppet
         | 
| 7 | 
            +
                module Generators
         | 
| 8 | 
            +
                  class DataTypeGenerator < Retrospec::Puppet::Generators::ResourceBaseGenerator
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                    def initialize(module_path, spec_object = {})
         | 
| 11 | 
            +
                      super
         | 
| 12 | 
            +
                      @singular_name = 'type_alias'
         | 
| 13 | 
            +
                      @plural_name = 'type_aliases'
         | 
| 14 | 
            +
                    end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                    def self.manifest_files(module_path)
         | 
| 17 | 
            +
                      Dir.glob(File.join(module_path, 'types', '**', '*.pp'))
         | 
| 18 | 
            +
                    end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                    def spec_template_file
         | 
| 21 | 
            +
                      'datatype_spec.rb.retrospec.erb'
         | 
| 22 | 
            +
                    end
         | 
| 23 | 
            +
             | 
| 24 | 
            +
                    def load_context_data
         | 
| 25 | 
            +
                      context.content = generate_content
         | 
| 26 | 
            +
                      context.parameters = parameters
         | 
| 27 | 
            +
                      context.type_name = type_name
         | 
| 28 | 
            +
                      context.resource_type = resource_type
         | 
| 29 | 
            +
                      context.resource_type_name = resource_type_name
         | 
| 30 | 
            +
                      context
         | 
| 31 | 
            +
                    end
         | 
| 32 | 
            +
             | 
| 33 | 
            +
                    def self.generate_spec_files(module_path, config_data)
         | 
| 34 | 
            +
                      manifest_files(module_path).map do |file|
         | 
| 35 | 
            +
                        datatype = new(module_path, config_data.merge({:manifest_file => file}))
         | 
| 36 | 
            +
                        next unless datatype.resource_type == ::Puppet::Pops::Model::TypeAlias
         | 
| 37 | 
            +
                        datatype.generate_spec_file
         | 
| 38 | 
            +
                      end.flatten
         | 
| 39 | 
            +
                    end
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                    # returns the path to the templates
         | 
| 42 | 
            +
                    # first looks inside the external templates directory for specific file
         | 
| 43 | 
            +
                    # then looks inside the gem path templates directory, which is really only useful
         | 
| 44 | 
            +
                    # when developing new templates.
         | 
| 45 | 
            +
                    def template_dir
         | 
| 46 | 
            +
                      if config_data[:template_dir]
         | 
| 47 | 
            +
                        external_templates = Dir.glob(File.expand_path(File.join(config_data[:template_dir], 'type_aliases', '*.erb')))
         | 
| 48 | 
            +
                      end
         | 
| 49 | 
            +
                      if external_templates and external_templates.count > 0
         | 
| 50 | 
            +
                        File.join(config_data[:template_dir], 'type_aliases')
         | 
| 51 | 
            +
                      else
         | 
| 52 | 
            +
                        File.expand_path(File.join(File.dirname(File.dirname(__FILE__)), 'templates', 'type_aliases'))
         | 
| 53 | 
            +
                      end
         | 
| 54 | 
            +
                    end
         | 
| 55 | 
            +
                  end
         | 
| 56 | 
            +
                end
         | 
| 57 | 
            +
              end
         | 
| 58 | 
            +
            end
         | 
| 59 | 
            +
             | 
| @@ -12,9 +12,16 @@ module Retrospec | |
| 12 12 | 
             
                    # retrospec will initilalize this class so its up to you
         | 
| 13 13 | 
             
                    # to set any additional variables you need to get the job done.
         | 
| 14 14 | 
             
                    def initialize(module_path, spec_object = {})
         | 
| 15 | 
            +
                      spec_object.merge!({:manifest_file => spec_object[:manifest_file],
         | 
| 16 | 
            +
                        :content => nil, name: spec_object[:name]})
         | 
| 15 17 | 
             
                      super
         | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            +
                    end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                    def item_spec_path
         | 
| 21 | 
            +
                      iname = type_name || item_name
         | 
| 22 | 
            +
                      file_name = generate_file_name(iname.downcase)
         | 
| 23 | 
            +
                      path = generate_path("#{file_name}_spec.rb", iname)
         | 
| 24 | 
            +
                      File.join(spec_path, path )
         | 
| 18 25 | 
             
                    end
         | 
| 19 26 |  | 
| 20 27 | 
             
                    def singular_name
         | 
| @@ -61,6 +68,7 @@ module Retrospec | |
| 61 68 | 
             
                    def self.generate_spec_files(module_path, config_data)
         | 
| 62 69 | 
             
                      manifests = manifest_files(module_path)
         | 
| 63 70 | 
             
                      files = Retrospec::Puppet::Generators::HostClassGenerator.generate_spec_files(module_path, config_data)
         | 
| 71 | 
            +
                      files << Retrospec::Puppet::Generators::DataTypeGenerator.generate_spec_files(module_path, config_data)
         | 
| 64 72 | 
             
                      files << Retrospec::Puppet::Generators::DefinitionGenerator.generate_spec_files(module_path, config_data)
         | 
| 65 73 | 
             
                      files.flatten
         | 
| 66 74 | 
             
                    end
         | 
| @@ -158,40 +166,7 @@ module Retrospec | |
| 158 166 | 
             
                    # for files that have multiple types, we just don't care since it doesn't
         | 
| 159 167 | 
             
                    # follow the style guide
         | 
| 160 168 | 
             
                    def type_name
         | 
| 161 | 
            -
                      if ast.eContents.first.respond_to?(:name)
         | 
| 162 | 
            -
                        ast.eContents.first.name
         | 
| 163 | 
            -
                      else
         | 
| 164 | 
            -
                        #ast.eContents.first.host_matches.first
         | 
| 165 | 
            -
                      end
         | 
| 166 | 
            -
                    end
         | 
| 167 | 
            -
             | 
| 168 | 
            -
                    # returns the filename of the type
         | 
| 169 | 
            -
                    def generate_file_name(type_name)
         | 
| 170 | 
            -
                      tokens = type_name.split('::')
         | 
| 171 | 
            -
                      file_name = tokens.pop
         | 
| 172 | 
            -
                      "#{file_name}_spec.rb"
         | 
| 173 | 
            -
                    end
         | 
| 174 | 
            -
             | 
| 175 | 
            -
                    # generates a file path for spec tests based on the resource name.  An added option
         | 
| 176 | 
            -
                    # is to generate directory names for each parent resource as a default option
         | 
| 177 | 
            -
                    def item_spec_path
         | 
| 178 | 
            -
                      file_name = generate_file_name(type_name)
         | 
| 179 | 
            -
                      tokens = type_name.split('::')
         | 
| 180 | 
            -
                      # if there are only two tokens ie. tomcat::params we dont need to create a subdirectory
         | 
| 181 | 
            -
                      if tokens.count > 2
         | 
| 182 | 
            -
                        # this is a deep level resource ie. tomcat::config::server::connector
         | 
| 183 | 
            -
                        # however we don't need the tomcat directory so we can just remove it
         | 
| 184 | 
            -
                        # this should leave us with config/server/connector_spec.rb
         | 
| 185 | 
            -
                        tokens.delete_at(0)
         | 
| 186 | 
            -
                        # remove the last token since its the class name
         | 
| 187 | 
            -
                        tokens.pop
         | 
| 188 | 
            -
                        # so lets make a directory structure out of it
         | 
| 189 | 
            -
                        dir_name = File.join(tokens) # config/server
         | 
| 190 | 
            -
                        dir_name = File.join(spec_path, dir_name, file_name) # spec/classes/tomcat/config/server
         | 
| 191 | 
            -
                      else
         | 
| 192 | 
            -
                        dir_name = File.join(spec_path, file_name)
         | 
| 193 | 
            -
                      end
         | 
| 194 | 
            -
                      dir_name
         | 
| 169 | 
            +
                      ast.eContents.first.name if ast.eContents.first.respond_to?(:name)
         | 
| 195 170 | 
             
                    end
         | 
| 196 171 |  | 
| 197 172 | 
             
                    def ast
         | 
| @@ -29,7 +29,7 @@ module Retrospec | |
| 29 29 | 
             
                      if CORE_TYPES.include?(spec_object[:name])
         | 
| 30 30 | 
             
                        raise Retrospec::Puppet::Generators::CoreTypeException
         | 
| 31 31 | 
             
                      end
         | 
| 32 | 
            -
                      @context = OpenStruct.new(:type_name => spec_object[:name], :parameters => spec_object[:parameters],
         | 
| 32 | 
            +
                      @context = OpenStruct.new(:type_name => spec_object[:name], name: spec_object[:name], :parameters => spec_object[:parameters],
         | 
| 33 33 | 
             
                                                :properties => spec_object[:properties], :providers => spec_object[:providers])
         | 
| 34 34 | 
             
                    end
         | 
| 35 35 |  | 
| @@ -0,0 +1 @@ | |
| 1 | 
            +
            type Sample_module::Ext::Sudoers_entry = Variant[String, Array[String]]
         | 
| @@ -0,0 +1 @@ | |
| 1 | 
            +
            type Sample_module::Sudoers_entry = Variant[String, Array[String]]
         | 
| @@ -0,0 +1 @@ | |
| 1 | 
            +
            type Sample_module::Ext::Sudoers_entry = Variant[String, Array[String]]
         | 
| @@ -0,0 +1 @@ | |
| 1 | 
            +
            type Sample_module::Sudoers_entry = Variant[String, Array[String]]
         | 
| @@ -0,0 +1,61 @@ | |
| 1 | 
            +
            require 'spec_helper'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            describe 'datatype_generator' do
         | 
| 4 | 
            +
              before(:each) do
         | 
| 5 | 
            +
                FileUtils.rm_rf(spec_files_path) if File.exist?(spec_files_path)
         | 
| 6 | 
            +
              end
         | 
| 7 | 
            +
             | 
| 8 | 
            +
              let(:generator_opts) do
         | 
| 9 | 
            +
                { :name => 'sudoers_entry', :puppet_context => puppet_context, :template_dir => retrospec_templates_path
         | 
| 10 | 
            +
                }
         | 
| 11 | 
            +
              end
         | 
| 12 | 
            +
             | 
| 13 | 
            +
              let(:generator_opts) do
         | 
| 14 | 
            +
                { :manifest_file => sample_file, :template_dir => retrospec_templates_path }
         | 
| 15 | 
            +
              end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
              let(:sample_file) do
         | 
| 18 | 
            +
                File.join(fixtures_path, 'manifests', 'sql.pp')
         | 
| 19 | 
            +
              end
         | 
| 20 | 
            +
             | 
| 21 | 
            +
              let(:module_path) do
         | 
| 22 | 
            +
                sample_module_path
         | 
| 23 | 
            +
              end
         | 
| 24 | 
            +
             | 
| 25 | 
            +
              let(:spec_files_path) do
         | 
| 26 | 
            +
                File.join(module_path, 'spec', 'type_aliases')
         | 
| 27 | 
            +
              end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
              let(:datatypes_path) do
         | 
| 30 | 
            +
                File.join(module_path, 'types')
         | 
| 31 | 
            +
              end
         | 
| 32 | 
            +
             | 
| 33 | 
            +
              let(:puppet_context) do
         | 
| 34 | 
            +
                path = File.join(fixture_modules_path, 'tomcat')
         | 
| 35 | 
            +
                opts = { :module_path => path, :enable_beaker_tests => false, :name => 'name-test123',
         | 
| 36 | 
            +
                         :enable_user_templates => false, :template_dir => retrospec_templates_path }
         | 
| 37 | 
            +
                mod = Retrospec::Plugins::V1::Puppet.new(opts[:module_path], opts)
         | 
| 38 | 
            +
                mod.post_init
         | 
| 39 | 
            +
                mod.context
         | 
| 40 | 
            +
              end
         | 
| 41 | 
            +
             | 
| 42 | 
            +
              let(:generator) do
         | 
| 43 | 
            +
                Retrospec::Puppet::Generators::DataTypeGenerator.new(module_path, generator_opts)
         | 
| 44 | 
            +
              end
         | 
| 45 | 
            +
             | 
| 46 | 
            +
              it 'should create datatype spec file' do
         | 
| 47 | 
            +
                Retrospec::Puppet::Generators::DataTypeGenerator.generate_spec_files(module_path, generator_opts)
         | 
| 48 | 
            +
                expect(File.exist?(File.join(spec_files_path, 'sudoers_entry_spec.rb'))).to eq(true)
         | 
| 49 | 
            +
              end
         | 
| 50 | 
            +
             | 
| 51 | 
            +
              it 'should create datatype ext spec file' do
         | 
| 52 | 
            +
                Retrospec::Puppet::Generators::DataTypeGenerator.generate_spec_files(module_path, generator_opts)
         | 
| 53 | 
            +
                expect(File.exist?(File.join(spec_files_path, 'ext','sudoers_entry_spec.rb'))).to eq(true)
         | 
| 54 | 
            +
              end
         | 
| 55 | 
            +
             | 
| 56 | 
            +
              it '#self.manifest_files' do
         | 
| 57 | 
            +
                files = Retrospec::Puppet::Generators::DataTypeGenerator.manifest_files(module_path)
         | 
| 58 | 
            +
                expect(files.count).to be > 0
         | 
| 59 | 
            +
              end
         | 
| 60 | 
            +
             | 
| 61 | 
            +
            end
         | 
| @@ -34,7 +34,12 @@ describe Retrospec::Puppet::Generators::ResourceBaseGenerator do | |
| 34 34 | 
             
                 File.join(spec_files_path, 'classes', 'sub', 'settings_spec.rb'),
         | 
| 35 35 | 
             
                 File.join(spec_files_path, 'defines', 'sub', 'settings_define_spec.rb'),
         | 
| 36 36 | 
             
                 File.join(spec_files_path, 'classes', 'parameter_logic_spec.rb'),
         | 
| 37 | 
            -
                File.join(spec_files_path, 'defines', 'one_define_spec.rb') | 
| 37 | 
            +
                File.join(spec_files_path, 'defines', 'one_define_spec.rb'),
         | 
| 38 | 
            +
                File.join(spec_files_path, 'type_aliases', 'ext', 'sudoers_entry_spec.rb'),
         | 
| 39 | 
            +
                File.join(spec_files_path, 'type_aliases','sudoers_entry_spec.rb')
         | 
| 40 | 
            +
             | 
| 41 | 
            +
             | 
| 42 | 
            +
              ]
         | 
| 38 43 | 
             
              end
         | 
| 39 44 |  | 
| 40 45 | 
             
              it 'should generate a bunch of files' do
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: puppet-retrospec
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1. | 
| 4 | 
            +
              version: 1.8.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Corey Osman
         | 
| @@ -112,6 +112,7 @@ files: | |
| 112 112 | 
             
            - ".rspec"
         | 
| 113 113 | 
             
            - ".rubocop.yml"
         | 
| 114 114 | 
             
            - ".rubocop_todo.yml"
         | 
| 115 | 
            +
            - ".ruby-version"
         | 
| 115 116 | 
             
            - CHANGELOG.md
         | 
| 116 117 | 
             
            - DEVELOPMENT.md
         | 
| 117 118 | 
             
            - Dockerfile
         | 
| @@ -125,6 +126,7 @@ files: | |
| 125 126 | 
             
            - lib/retrospec/plugins/v1/plugin/generators.rb
         | 
| 126 127 | 
             
            - lib/retrospec/plugins/v1/plugin/generators/acceptance_generator.rb
         | 
| 127 128 | 
             
            - lib/retrospec/plugins/v1/plugin/generators/base_generator.rb
         | 
| 129 | 
            +
            - lib/retrospec/plugins/v1/plugin/generators/data_type_generator.rb
         | 
| 128 130 | 
             
            - lib/retrospec/plugins/v1/plugin/generators/definition_generator.rb
         | 
| 129 131 | 
             
            - lib/retrospec/plugins/v1/plugin/generators/fact_generator.rb
         | 
| 130 132 | 
             
            - lib/retrospec/plugins/v1/plugin/generators/function_generator.rb
         | 
| @@ -168,6 +170,8 @@ files: | |
| 168 170 | 
             
            - spec/fixtures/fixture_modules/one_resource_module/manifests/params.pp
         | 
| 169 171 | 
             
            - spec/fixtures/fixture_modules/one_resource_module/manifests/sub/settings.pp
         | 
| 170 172 | 
             
            - spec/fixtures/fixture_modules/one_resource_module/manifests/sub/settings_define.pp
         | 
| 173 | 
            +
            - spec/fixtures/fixture_modules/one_resource_module/types/ext/sudoers_entry.pp
         | 
| 174 | 
            +
            - spec/fixtures/fixture_modules/one_resource_module/types/sudoers_entry.pp
         | 
| 171 175 | 
             
            - spec/fixtures/fixture_modules/required_parameters/manifests/init.pp
         | 
| 172 176 | 
             
            - spec/fixtures/fixture_modules/sample_module/lib/facter/fix_installed.rb
         | 
| 173 177 | 
             
            - spec/fixtures/fixture_modules/sample_module/lib/puppet/functions/awesome_parser.rb
         | 
| @@ -178,6 +182,8 @@ files: | |
| 178 182 | 
             
            - spec/fixtures/fixture_modules/sample_module/lib/puppet/reports/test
         | 
| 179 183 | 
             
            - spec/fixtures/fixture_modules/sample_module/manifests/init.pp
         | 
| 180 184 | 
             
            - spec/fixtures/fixture_modules/sample_module/spec/unit/facter/fix_installed_spec.rb
         | 
| 185 | 
            +
            - spec/fixtures/fixture_modules/sample_module/types/ext/sudoers_entry.pp
         | 
| 186 | 
            +
            - spec/fixtures/fixture_modules/sample_module/types/sudoers_entry.pp
         | 
| 181 187 | 
             
            - spec/fixtures/fixture_modules/zero_resource_module/manifests/empty_class.pp
         | 
| 182 188 | 
             
            - spec/fixtures/fixture_modules/zero_resource_module/manifests/not_a_resource_defination.pp
         | 
| 183 189 | 
             
            - spec/fixtures/fixture_modules/zero_resource_module/metadata.json
         | 
| @@ -415,6 +421,7 @@ files: | |
| 415 421 | 
             
            - spec/integration/retrospec_spec.rb
         | 
| 416 422 | 
             
            - spec/spec_helper.rb
         | 
| 417 423 | 
             
            - spec/unit/generators/acceptance_generator_spec.rb
         | 
| 424 | 
            +
            - spec/unit/generators/data_type_generator_spec.rb
         | 
| 418 425 | 
             
            - spec/unit/generators/definition_generator_spec.rb
         | 
| 419 426 | 
             
            - spec/unit/generators/fact_generater_spec.rb
         | 
| 420 427 | 
             
            - spec/unit/generators/function_generator_spec.rb
         |