Sha256: 2b4a6fbd7ed48d2f5169bfe458dc76d4327e430e730dadfd0fc7f1c0fc8416ec

Contents?: true

Size: 554 Bytes

Versions: 25

Compression:

Stored size: 554 Bytes

Contents

require 'singleton'

module SpecInfra
  module Backend
    class Base
      include Singleton

      def set_commands(c)
        @commands = c
      end

      def set_example(e)
        @example = e
      end

      def commands
        @commands
      end
      
      def check_zero(cmd, *args)
        ret = run_command(commands.send(cmd, *args))
        ret[:exit_status] == 0
      end

      # Default action is to call check_zero with args
      def method_missing(meth, *args, &block)
        check_zero(meth, *args)
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
specinfra-0.0.6 lib/specinfra/backend/base.rb
specinfra-0.0.5 lib/specinfra/backend/base.rb
specinfra-0.0.4 lib/specinfra/backend/base.rb
specinfra-0.0.3 lib/specinfra/backend/base.rb
specinfra-0.0.2 lib/specinfra/backend/base.rb