Sha256: 5a9462ca8c37c4133c07c8c06fa94cf9a41d24840c10bfb7cfb47b5a1b0ab6b6

Contents?: true

Size: 649 Bytes

Versions: 6

Compression:

Stored size: 649 Bytes

Contents

module Serverspec
  module Helper
    module Type
      types = %w(
        base service package port file cron command linux_kernel_parameter iptables host
        routing_table default_gateway selinux user group zfs ipnat ipfilter kernel_module
      )

      types.each {|type| require "serverspec/type/#{type}" }

      types.each do |type|
        define_method type do |*args|
          name = args.first
          self.class.const_get('Serverspec').const_get('Type').const_get(camelize(type)).new(name)
        end
      end

      def camelize(string)
        string.split("_").each {|s| s.capitalize! }.join("")
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
serverspec-0.6.6 lib/serverspec/helper/type.rb
serverspec-0.6.5 lib/serverspec/helper/type.rb
serverspec-0.6.4 lib/serverspec/helper/type.rb
serverspec-0.6.3 lib/serverspec/helper/type.rb
serverspec-0.6.2 lib/serverspec/helper/type.rb
serverspec-0.6.1 lib/serverspec/helper/type.rb