Sha256: 87928c3a8fd426f3e224bbc9290b576923d3f1409e1ebd338e193719224963b2

Contents?: true

Size: 713 Bytes

Versions: 3

Compression:

Stored size: 713 Bytes

Contents

module Serverspec
  class Filter
    def self.filter_subject example
      description_args = example.metadata[:example_group][:example_group][:description_args].join(' ')

      # Linux kernel parameters
      %w( abi crypto debug dev fs kernel net sunrpc vm ).each do |param|
        if description_args.match(/^#{param}\./)
          ret = backend(Serverspec::Commands::Base).do_check("sysctl -q -n #{description_args}")
          val = ret[:stdout].strip
          val = val.to_i if val.match(/^\d+$/)
          subject = Serverspec::Subject.new
          subject.value(val)
          return subject
        end
      end

      example.metadata[:example_group][:description_args].join(' ')
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
serverspec-0.2.18 lib/serverspec/filter.rb
serverspec-0.2.17 lib/serverspec/filter.rb
serverspec-0.2.16 lib/serverspec/filter.rb