Sha256: cac44d5c7ac09e1c84c9fc534e0bbedd4dd421bf86cbca99e1b1ddd1fe3f3e7d

Contents?: true

Size: 970 Bytes

Versions: 42

Compression:

Stored size: 970 Bytes

Contents

require 'stringify-hash'

module Beaker
  module Options

    # A hash that treats Symbol and String keys interchangeably
    # and recursively merges hashes
    class OptionsHash < StringifyHash

      # Determine if type of ObjectHash is pe, defaults to true
      #
      # @example Use this method to test if the :type setting is pe
      #     a['type'] = 'pe'
      #     a.is_pe? == true
      #
      # @return [Boolean]
      def is_pe?
        self[:type] ? self[:type] =~ /pe/ : true
      end

      # Determine the puppet type of the ObjectHash
      #
      # Default is FOSS
      #
      # @example Use this method to test if the :type setting is pe
      #     a['type'] = 'pe'
      #     a.get_type == :pe
      #
      # @return [Symbol] the type given in the options
      def get_type
        case self[:type]
        when /pe/
          :pe
        when /foss/
          :foss
        else
          :foss
        end
      end

    end
  end
end

Version data entries

42 entries across 42 versions & 1 rubygems

Version Path
beaker-2.37.0 lib/beaker/options/options_hash.rb
beaker-2.36.0 lib/beaker/options/options_hash.rb
beaker-2.35.0 lib/beaker/options/options_hash.rb
beaker-2.34.0 lib/beaker/options/options_hash.rb
beaker-2.33.0 lib/beaker/options/options_hash.rb
beaker-2.32.1 lib/beaker/options/options_hash.rb
beaker-2.32.0 lib/beaker/options/options_hash.rb
beaker-2.31.0 lib/beaker/options/options_hash.rb
beaker-2.30.1 lib/beaker/options/options_hash.rb
beaker-2.30.0 lib/beaker/options/options_hash.rb
beaker-2.29.1 lib/beaker/options/options_hash.rb
beaker-2.29.0 lib/beaker/options/options_hash.rb
beaker-2.28.0 lib/beaker/options/options_hash.rb
beaker-2.27.0 lib/beaker/options/options_hash.rb
beaker-2.26.0 lib/beaker/options/options_hash.rb
beaker-2.25.0 lib/beaker/options/options_hash.rb
beaker-2.24.0 lib/beaker/options/options_hash.rb
beaker-2.23.0 lib/beaker/options/options_hash.rb
beaker-2.22.0 lib/beaker/options/options_hash.rb
beaker-2.21.0 lib/beaker/options/options_hash.rb