puppet-repl 0.0.1 → 0.0.2
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/README.md +13 -8
- data/lib/puppet-repl/cli.rb +15 -35
- data/lib/puppet-repl/support.rb +138 -0
- data/lib/version.rb +1 -1
- data/puppet-repl.gemspec +5 -3
- data/spec/puppet-repl_spec.rb +17 -1
- data/spec/support_spec.rb +43 -0
- metadata +4 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 264126ccdd7fafe72a52274c967c28ef18d53679
         | 
| 4 | 
            +
              data.tar.gz: 31d01dd0eaa97e130ec51d9679424839d48cb73d
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: c12edea95534472ad07ba667ecdebd21a6d5f61eeccf01950b587e9e43eb6ea23563ccd5743731f91aba7f0245bb0898fdbe1580e9cf8b5839518cfe438f5910
         | 
| 7 | 
            +
              data.tar.gz: 023f8e084288ca93a16366d8d8dfb473adadb0baa53c83f87951d2e99f14ecc3e55f9bd140622cb0b5fd4f531b9dee76482be9830c46745f63a26a0689c53957
         | 
    
        data/README.md
    CHANGED
    
    | @@ -8,6 +8,12 @@ Requires Puppet 3.8+ and only uses the future parser. | |
| 8 8 | 
             
            ## Installation
         | 
| 9 9 | 
             
            `gem install puppet-repl`
         | 
| 10 10 |  | 
| 11 | 
            +
            ## Load path
         | 
| 12 | 
            +
            puppet-repl will load all functions from your basemodulepath and environmentpath.
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            This means if you run `puppet module install puppetlabs-stdlib` and they will be available
         | 
| 15 | 
            +
            in the repl.
         | 
| 16 | 
            +
             | 
| 11 17 | 
             
            ## Usage
         | 
| 12 18 | 
             
            Puppet-repl will only parse and evaulate your code.  It will not build a catalog
         | 
| 13 19 | 
             
            and try to enforce the catalog. This has a few side affects.
         | 
| @@ -34,7 +40,8 @@ Type "exit", "functions", "types", "reset", "help" for more information. | |
| 34 40 |  | 
| 35 41 | 
             
            ```
         | 
| 36 42 |  | 
| 37 | 
            -
            Using Variables
         | 
| 43 | 
            +
            ## Using Variables
         | 
| 44 | 
            +
             | 
| 38 45 | 
             
            ```
         | 
| 39 46 | 
             
            MacBook-Pro-2/tmp % prepl
         | 
| 40 47 | 
             
            Puppet Version: 4.2.2
         | 
| @@ -49,16 +56,13 @@ Type "exit", "functions", "types", "reset", "help" for more information. | |
| 49 56 | 
             
            >>
         | 
| 50 57 | 
             
            ```
         | 
| 51 58 |  | 
| 52 | 
            -
            Using functions | 
| 59 | 
            +
            ## Using functions
         | 
| 60 | 
            +
            Functions will run and produce the desired output.  If you type the word `functions`
         | 
| 61 | 
            +
            a list of available functions will be displayed on the screen.
         | 
| 53 62 |  | 
| 54 63 | 
             
            ```
         | 
| 55 64 | 
             
            >> split('hello/there/one/two/three','/')
         | 
| 56 | 
            -
             =>
         | 
| 57 | 
            -
            hello
         | 
| 58 | 
            -
            there
         | 
| 59 | 
            -
            one
         | 
| 60 | 
            -
            two
         | 
| 61 | 
            -
            three
         | 
| 65 | 
            +
             => ["hello", "there", "one", "two", "three"]
         | 
| 62 66 |  | 
| 63 67 | 
             
            ```
         | 
| 64 68 | 
             
            ## Duplicate resource error
         | 
| @@ -72,6 +76,7 @@ Just like normal puppet code you cannot create duplicate resources. | |
| 72 76 | 
             
            You can reset the parser by running `reset` within the repl without having to exit.
         | 
| 73 77 |  | 
| 74 78 | 
             
            ## Troubleshooting
         | 
| 79 | 
            +
             | 
| 75 80 | 
             
            ## Forward
         | 
| 76 81 | 
             
            I was just playing around and created this simple tool.  Its alpha quality,
         | 
| 77 82 | 
             
            and a ton of features need to be added. Please create a issue if you see a bug or feature that should be added.
         | 
    
        data/lib/puppet-repl/cli.rb
    CHANGED
    
    | @@ -1,42 +1,17 @@ | |
| 1 1 | 
             
            require 'puppet'
         | 
| 2 2 | 
             
            require 'puppet/pops'
         | 
| 3 | 
            -
            require  | 
| 4 | 
            -
             | 
| 3 | 
            +
            require 'readline'
         | 
| 4 | 
            +
            require_relative 'support'
         | 
| 5 5 | 
             
            module PuppetRepl
         | 
| 6 6 | 
             
              class Cli
         | 
| 7 | 
            +
                include PuppetRepl::Support
         | 
| 7 8 |  | 
| 8 | 
            -
                 | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
                def module_dirs
         | 
| 14 | 
            -
                  Puppet.settings[:basemodulepath].split(':')
         | 
| 15 | 
            -
                end
         | 
| 16 | 
            -
             | 
| 17 | 
            -
                # creates a puppet environment given a module path and environment name
         | 
| 18 | 
            -
                def puppet_environment
         | 
| 19 | 
            -
                  @puppet_environment ||= Puppet::Node::Environment.create('production', module_dirs)
         | 
| 20 | 
            -
                end
         | 
| 21 | 
            -
             | 
| 22 | 
            -
                def scope
         | 
| 23 | 
            -
                  unless @scope
         | 
| 24 | 
            -
                    begin
         | 
| 25 | 
            -
                      Puppet.initialize_settings
         | 
| 26 | 
            -
                    rescue
         | 
| 27 | 
            -
                      # do nothing otherwise calling init twice raises an error
         | 
| 28 | 
            -
                    end
         | 
| 29 | 
            -
                    #options['parameters']
         | 
| 30 | 
            -
                    #options['facts']
         | 
| 31 | 
            -
                    #options[:classes]
         | 
| 32 | 
            -
                    node_name = 'node_name'
         | 
| 33 | 
            -
                    node = Puppet::Node.new(node_name, :environment => puppet_environment)
         | 
| 34 | 
            -
                    compiler = Puppet::Parser::Compiler.new(node)
         | 
| 35 | 
            -
                    @scope = Puppet::Parser::Scope.new(compiler)
         | 
| 36 | 
            -
                    @scope.source = Puppet::Resource::Type.new(:node, node_name)
         | 
| 37 | 
            -
                    @scope.parent = compiler.topscope
         | 
| 9 | 
            +
                def initialize
         | 
| 10 | 
            +
                  begin
         | 
| 11 | 
            +
                    Puppet.initialize_settings
         | 
| 12 | 
            +
                  rescue
         | 
| 13 | 
            +
                    # do nothing otherwise calling init twice raises an error
         | 
| 38 14 | 
             
                  end
         | 
| 39 | 
            -
                  @scope
         | 
| 40 15 | 
             
                end
         | 
| 41 16 |  | 
| 42 17 | 
             
                def puppet_eval(input)
         | 
| @@ -59,21 +34,25 @@ module PuppetRepl | |
| 59 34 | 
             
                  end
         | 
| 60 35 | 
             
                  result
         | 
| 61 36 | 
             
                end
         | 
| 62 | 
            -
             | 
| 37 | 
            +
             | 
| 63 38 | 
             
                def handle_input(input)
         | 
| 64 39 | 
             
                  case input
         | 
| 65 40 | 
             
                  when 'help'
         | 
| 66 41 | 
             
                    PuppetRepl::Cli.print_repl_desc
         | 
| 67 42 | 
             
                  when 'functions'
         | 
| 68 | 
            -
                    puts  | 
| 43 | 
            +
                    puts function_map.keys.sort
         | 
| 69 44 | 
             
                  when 'types'
         | 
| 70 45 | 
             
                    puts "list of types coming soon"
         | 
| 71 46 | 
             
                  when '_'
         | 
| 72 47 | 
             
                    puts(" => #{@last_item}")
         | 
| 48 | 
            +
                  when 'environment'
         | 
| 49 | 
            +
                    puts "Puppet Environment: #{puppet_env_name}"
         | 
| 73 50 | 
             
                  when 'exit'
         | 
| 74 51 | 
             
                    exit 0
         | 
| 75 52 | 
             
                  when 'reset'
         | 
| 76 53 | 
             
                    @scope = nil
         | 
| 54 | 
            +
                  when 'current_resources'
         | 
| 55 | 
            +
                    compiler.known_resource_types
         | 
| 77 56 | 
             
                  else
         | 
| 78 57 | 
             
                    result = puppet_eval(input)
         | 
| 79 58 | 
             
                    @last_item = result
         | 
| @@ -87,6 +66,7 @@ module PuppetRepl | |
| 87 66 |  | 
| 88 67 | 
             
                def self.print_repl_desc
         | 
| 89 68 | 
             
                  puts(<<-EOT)
         | 
| 69 | 
            +
            Ruby Version: #{RUBY_VERSION}
         | 
| 90 70 | 
             
            Puppet Version: #{Puppet.version}
         | 
| 91 71 | 
             
            Puppet Repl Version: #{PuppetRepl::VERSION}
         | 
| 92 72 | 
             
            Created by: NWOps <corey@nwops.io>
         | 
| @@ -0,0 +1,138 @@ | |
| 1 | 
            +
            module PuppetRepl
         | 
| 2 | 
            +
              module Support
         | 
| 3 | 
            +
             | 
| 4 | 
            +
                # returns an array of module directories
         | 
| 5 | 
            +
                def module_dirs
         | 
| 6 | 
            +
                  dirs = []
         | 
| 7 | 
            +
                  dirs << File.join(Puppet[:environmentpath],puppet_env_name,'modules')
         | 
| 8 | 
            +
                  dirs << Puppet.settings[:basemodulepath].split(':')
         | 
| 9 | 
            +
                  dirs.flatten
         | 
| 10 | 
            +
                end
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                def puppet_lib_dir
         | 
| 13 | 
            +
                  # returns something like "/Library/Ruby/Gems/2.0.0/gems/puppet-4.2.2/lib/puppet.rb"
         | 
| 14 | 
            +
                  @puppet_lib_dir ||= File.dirname(Puppet.method(:[]).source_location.first)
         | 
| 15 | 
            +
                end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                # returns a array of function files
         | 
| 18 | 
            +
                def function_files
         | 
| 19 | 
            +
                  search_dirs = lib_dirs.map do |lib_dir|
         | 
| 20 | 
            +
                    [File.join(lib_dir, 'puppet', 'functions', '**', '*.rb'),
         | 
| 21 | 
            +
                      File.join(lib_dir, 'functions', '**', '*.rb'),
         | 
| 22 | 
            +
                     File.join(lib_dir, 'puppet', 'parser', 'functions', '*.rb')
         | 
| 23 | 
            +
                     ]
         | 
| 24 | 
            +
                  end
         | 
| 25 | 
            +
                  # add puppet lib directories
         | 
| 26 | 
            +
                  search_dirs << [File.join(puppet_lib_dir, 'puppet', 'functions', '**', '*.rb'),
         | 
| 27 | 
            +
                    File.join(puppet_lib_dir, 'puppet', 'parser', 'functions', '*.rb')
         | 
| 28 | 
            +
                   ]
         | 
| 29 | 
            +
                  Dir.glob(search_dirs.flatten)
         | 
| 30 | 
            +
                end
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                # returns either the module name or puppet version
         | 
| 33 | 
            +
                def mod_finder
         | 
| 34 | 
            +
                  @mod_finder ||= Regexp.new('\/([\w\-\.]+)\/lib')
         | 
| 35 | 
            +
                end
         | 
| 36 | 
            +
             | 
| 37 | 
            +
                # returns a map of functions
         | 
| 38 | 
            +
                def function_map
         | 
| 39 | 
            +
                  unless @functions
         | 
| 40 | 
            +
                    @functions = {}
         | 
| 41 | 
            +
                    function_files.each do |file|
         | 
| 42 | 
            +
                      obj = {}
         | 
| 43 | 
            +
                      name = File.basename(file, '.rb')
         | 
| 44 | 
            +
                      obj[:name] = name
         | 
| 45 | 
            +
                      obj[:parent] = mod_finder.match(file)[1]
         | 
| 46 | 
            +
                      @functions["#{obj[:parent]}::#{name}"] = obj
         | 
| 47 | 
            +
                    end
         | 
| 48 | 
            +
                  end
         | 
| 49 | 
            +
                  @functions
         | 
| 50 | 
            +
                end
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                def lib_dirs
         | 
| 53 | 
            +
                  module_dirs.map do |mod_dir|
         | 
| 54 | 
            +
                    Dir["#{mod_dir}/*/lib"].entries
         | 
| 55 | 
            +
                  end.flatten
         | 
| 56 | 
            +
                end
         | 
| 57 | 
            +
             | 
| 58 | 
            +
                def load_lib_dirs
         | 
| 59 | 
            +
                  lib_dirs.each do |lib|
         | 
| 60 | 
            +
                    $LOAD_PATH << lib
         | 
| 61 | 
            +
                  end
         | 
| 62 | 
            +
                end
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                # returns a future parser for evaluating code
         | 
| 65 | 
            +
                def parser
         | 
| 66 | 
            +
                  @parser || ::Puppet::Pops::Parser::EvaluatingParser.new
         | 
| 67 | 
            +
                end
         | 
| 68 | 
            +
             | 
| 69 | 
            +
                # the cached name of the environment
         | 
| 70 | 
            +
                def puppet_env_name
         | 
| 71 | 
            +
                  @penv ||= ENV['PUPPET_ENV'] || Puppet[:environment]
         | 
| 72 | 
            +
                end
         | 
| 73 | 
            +
             | 
| 74 | 
            +
                # creates a puppet environment given a module path and environment name
         | 
| 75 | 
            +
                # this is cached
         | 
| 76 | 
            +
                def puppet_environment
         | 
| 77 | 
            +
                  @puppet_environment ||= Puppet::Node::Environment.create(
         | 
| 78 | 
            +
                    puppet_env_name,
         | 
| 79 | 
            +
                    module_dirs,
         | 
| 80 | 
            +
                    manifests_dir
         | 
| 81 | 
            +
                    )
         | 
| 82 | 
            +
                end
         | 
| 83 | 
            +
             | 
| 84 | 
            +
                # def functions
         | 
| 85 | 
            +
                #   @functions = []
         | 
| 86 | 
            +
                #   @functions << compiler.loaders.static_loader.loaded.keys.find_all {|l| l.type == :function}
         | 
| 87 | 
            +
                # end
         | 
| 88 | 
            +
             | 
| 89 | 
            +
                def environment_loaders
         | 
| 90 | 
            +
                  name = compiler.loaders.public_environment_loader.loader_name
         | 
| 91 | 
            +
                end
         | 
| 92 | 
            +
             | 
| 93 | 
            +
                def compiler
         | 
| 94 | 
            +
                  @compiler
         | 
| 95 | 
            +
                end
         | 
| 96 | 
            +
             | 
| 97 | 
            +
                def create_scope(node_name)
         | 
| 98 | 
            +
                  #options['parameters']
         | 
| 99 | 
            +
                  #options['facts']
         | 
| 100 | 
            +
                  #options[:classes]
         | 
| 101 | 
            +
                  node = create_node(node_name)
         | 
| 102 | 
            +
                  @compiler = create_compiler(node)
         | 
| 103 | 
            +
                  scope = Puppet::Parser::Scope.new(compiler)
         | 
| 104 | 
            +
                  scope.source = Puppet::Resource::Type.new(:node, node_name)
         | 
| 105 | 
            +
                  scope.parent = @compiler.topscope
         | 
| 106 | 
            +
                  load_lib_dirs
         | 
| 107 | 
            +
                  scope
         | 
| 108 | 
            +
                end
         | 
| 109 | 
            +
             | 
| 110 | 
            +
                def create_compiler(node)
         | 
| 111 | 
            +
                  Puppet::Parser::Compiler.new(node)
         | 
| 112 | 
            +
                end
         | 
| 113 | 
            +
             | 
| 114 | 
            +
                def create_node(node_name)
         | 
| 115 | 
            +
                  Puppet::Node.new(node_name, :environment => puppet_environment)
         | 
| 116 | 
            +
                end
         | 
| 117 | 
            +
             | 
| 118 | 
            +
                def scope
         | 
| 119 | 
            +
                  begin
         | 
| 120 | 
            +
                    Puppet.initialize_settings
         | 
| 121 | 
            +
                  rescue
         | 
| 122 | 
            +
                    # do nothing otherwise calling init twice raises an error
         | 
| 123 | 
            +
                  end
         | 
| 124 | 
            +
                  @scope ||= create_scope('node_name')
         | 
| 125 | 
            +
                end
         | 
| 126 | 
            +
             | 
| 127 | 
            +
                def manifests_dir
         | 
| 128 | 
            +
                  File.join(Puppet[:environmentpath],puppet_env_name,'manifests')
         | 
| 129 | 
            +
                end
         | 
| 130 | 
            +
             | 
| 131 | 
            +
                def build_node(name, opts = {})
         | 
| 132 | 
            +
                  opts.merge!({:environment => node_environment})
         | 
| 133 | 
            +
                  Puppet::Node.new(name, opts)
         | 
| 134 | 
            +
                end
         | 
| 135 | 
            +
             | 
| 136 | 
            +
              end
         | 
| 137 | 
            +
            end
         | 
| 138 | 
            +
            #scope.environment.known_resource_types
         | 
    
        data/lib/version.rb
    CHANGED
    
    
    
        data/puppet-repl.gemspec
    CHANGED
    
    | @@ -5,11 +5,11 @@ | |
| 5 5 |  | 
| 6 6 | 
             
            Gem::Specification.new do |s|
         | 
| 7 7 | 
             
              s.name = "puppet-repl"
         | 
| 8 | 
            -
              s.version = "0.0. | 
| 8 | 
            +
              s.version = "0.0.2"
         | 
| 9 9 |  | 
| 10 10 | 
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         | 
| 11 11 | 
             
              s.authors = ["Corey Osman"]
         | 
| 12 | 
            -
              s.date = "2016-02- | 
| 12 | 
            +
              s.date = "2016-02-25"
         | 
| 13 13 | 
             
              s.description = "A interactive command line tool for evaluating the puppet language"
         | 
| 14 14 | 
             
              s.email = "corey@nwops.io"
         | 
| 15 15 | 
             
              s.executables = ["prepl"]
         | 
| @@ -29,10 +29,12 @@ Gem::Specification.new do |s| | |
| 29 29 | 
             
                "bin/prepl",
         | 
| 30 30 | 
             
                "lib/puppet-repl.rb",
         | 
| 31 31 | 
             
                "lib/puppet-repl/cli.rb",
         | 
| 32 | 
            +
                "lib/puppet-repl/support.rb",
         | 
| 32 33 | 
             
                "lib/version.rb",
         | 
| 33 34 | 
             
                "puppet-repl.gemspec",
         | 
| 34 35 | 
             
                "spec/puppet-repl_spec.rb",
         | 
| 35 | 
            -
                "spec/spec_helper.rb"
         | 
| 36 | 
            +
                "spec/spec_helper.rb",
         | 
| 37 | 
            +
                "spec/support_spec.rb"
         | 
| 36 38 | 
             
              ]
         | 
| 37 39 | 
             
              s.homepage = "http://github.com/nwops/puppet-repl"
         | 
| 38 40 | 
             
              s.licenses = ["MIT"]
         | 
    
        data/spec/puppet-repl_spec.rb
    CHANGED
    
    | @@ -14,7 +14,7 @@ describe "PuppetRepl" do | |
| 14 14 | 
             
                  'help'
         | 
| 15 15 | 
             
                end
         | 
| 16 16 | 
             
                it 'can show the help screen' do
         | 
| 17 | 
            -
                  repl_output = " | 
| 17 | 
            +
                  repl_output = "Ruby Version: #{RUBY_VERSION}\nPuppet Version: 4.3.2\nPuppet Repl Version: 0.0.1\nCreated by: NWOps <corey@nwops.io>\nType \"exit\", \"functions\", \"types\", \"reset\", \"help\" for more information.\n\n"
         | 
| 18 18 | 
             
                  expect{repl.handle_input(input)}.to output(repl_output).to_stdout
         | 
| 19 19 | 
             
                end
         | 
| 20 20 | 
             
              end
         | 
| @@ -49,6 +49,22 @@ describe "PuppetRepl" do | |
| 49 49 | 
             
                end
         | 
| 50 50 | 
             
              end
         | 
| 51 51 |  | 
| 52 | 
            +
              describe 'reset' do
         | 
| 53 | 
            +
                before(:each) do
         | 
| 54 | 
            +
                  repl.handle_input(input)
         | 
| 55 | 
            +
                end
         | 
| 56 | 
            +
                let(:input) do
         | 
| 57 | 
            +
                  "file{'/tmp/reset': ensure => present}"
         | 
| 58 | 
            +
                end
         | 
| 59 | 
            +
             | 
| 60 | 
            +
                it 'can process a each block' do
         | 
| 61 | 
            +
                  repl.handle_input('reset')
         | 
| 62 | 
            +
                  repl_output = " => File['/tmp/reset']\n"
         | 
| 63 | 
            +
                  expect{repl.handle_input(input)}.to output(repl_output).to_stdout
         | 
| 64 | 
            +
                end
         | 
| 65 | 
            +
              end
         | 
| 66 | 
            +
             | 
| 67 | 
            +
             | 
| 52 68 | 
             
              describe 'each block' do
         | 
| 53 69 | 
             
                let(:input) do
         | 
| 54 70 | 
             
                  "['/tmp/test3', '/tmp/test4'].each |String $path| { file{$path: ensure => present} }"
         | 
| @@ -0,0 +1,43 @@ | |
| 1 | 
            +
            require 'spec_helper'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
             | 
| 4 | 
            +
            describe 'support' do
         | 
| 5 | 
            +
             | 
| 6 | 
            +
              let(:repl) do
         | 
| 7 | 
            +
                PuppetRepl::Cli.new
         | 
| 8 | 
            +
              end
         | 
| 9 | 
            +
             | 
| 10 | 
            +
              let(:scope) do
         | 
| 11 | 
            +
                repl.scope
         | 
| 12 | 
            +
              end
         | 
| 13 | 
            +
             | 
| 14 | 
            +
              let(:puppet_version) do
         | 
| 15 | 
            +
                repl.mod_finder.match(repl.puppet_lib_dir)[1]
         | 
| 16 | 
            +
              end
         | 
| 17 | 
            +
             | 
| 18 | 
            +
              context '#function_map' do
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                it 'should list functions' do
         | 
| 21 | 
            +
                  func = repl.function_map["#{puppet_version}::hiera"]
         | 
| 22 | 
            +
                  expect(repl.function_map).to be_instance_of(Hash)
         | 
| 23 | 
            +
                  expect(func).to eq({:name => 'hiera', :parent => puppet_version})
         | 
| 24 | 
            +
                end
         | 
| 25 | 
            +
             | 
| 26 | 
            +
              end
         | 
| 27 | 
            +
             | 
| 28 | 
            +
              it 'should return a puppet version' do
         | 
| 29 | 
            +
                expect(puppet_version).to match(/puppet-\d\.\d.\d/)
         | 
| 30 | 
            +
              end
         | 
| 31 | 
            +
             | 
| 32 | 
            +
              it 'should return lib dirs' do
         | 
| 33 | 
            +
                expect(repl.lib_dirs.count).to be >= 1
         | 
| 34 | 
            +
             | 
| 35 | 
            +
             | 
| 36 | 
            +
              end
         | 
| 37 | 
            +
             | 
| 38 | 
            +
              it 'should return module dirs' do
         | 
| 39 | 
            +
                expect(repl.module_dirs.count).to be >= 1
         | 
| 40 | 
            +
             | 
| 41 | 
            +
              end
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: puppet-repl
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Corey Osman
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2016-02- | 
| 11 | 
            +
            date: 2016-02-25 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: puppet
         | 
| @@ -142,10 +142,12 @@ files: | |
| 142 142 | 
             
            - bin/prepl
         | 
| 143 143 | 
             
            - lib/puppet-repl.rb
         | 
| 144 144 | 
             
            - lib/puppet-repl/cli.rb
         | 
| 145 | 
            +
            - lib/puppet-repl/support.rb
         | 
| 145 146 | 
             
            - lib/version.rb
         | 
| 146 147 | 
             
            - puppet-repl.gemspec
         | 
| 147 148 | 
             
            - spec/puppet-repl_spec.rb
         | 
| 148 149 | 
             
            - spec/spec_helper.rb
         | 
| 150 | 
            +
            - spec/support_spec.rb
         | 
| 149 151 | 
             
            homepage: http://github.com/nwops/puppet-repl
         | 
| 150 152 | 
             
            licenses:
         | 
| 151 153 | 
             
            - MIT
         |