Sha256: 297f1f30b011e59e1c51f38bb37612f24abc3529031f3287eaadc7be604881b1
Contents?: true
Size: 1.83 KB
Versions: 4
Compression:
Stored size: 1.83 KB
Contents
require 'specinfra/version' require 'specinfra/helper' require 'specinfra/backend' require 'specinfra/command' require 'specinfra/command_factory' require 'specinfra/command_result' require 'specinfra/configuration' require 'specinfra/runner' require 'specinfra/processor' include Specinfra module Specinfra class << self def configuration Specinfra::Configuration end def command Specinfra::CommandFactory.instance end def backend type = Specinfra.configuration.backend if type.nil? warn "No backend type is specified. Fall back to :exec type." type = :exec end eval "Specinfra::Backend::#{type.to_s.to_camel_case}.instance" end end end if defined?(RSpec) RSpec.configure do |c| c.include(Specinfra::Helper::Configuration) c.add_setting :os, :default => nil c.add_setting :host, :default => nil c.add_setting :ssh, :default => nil c.add_setting :scp, :default => nil c.add_setting :sudo_password, :default => nil c.add_setting :winrm, :default => nil c.add_setting :architecture, :default => :x86_64 Specinfra.configuration.defaults.each { |k, v| c.add_setting k, :default => v } c.before :each do example = RSpec.respond_to?(:current_example) ? RSpec.current_example : self.example Specinfra.backend.set_example(example) end end end class Class def subclasses result = [] ObjectSpace.each_object(Class) do |k| result << k if k < self end result end end class String def to_snake_case self.gsub(/::/, '/'). gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2'). gsub(/([a-z\d])([A-Z])/,'\1_\2'). tr("-", "_"). downcase end def to_camel_case return self if self !~ /_/ && self =~ /[A-Z]+.*/ split('_').map{|e| e.capitalize}.join end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
specinfra-2.24.1 | lib/specinfra.rb |
specinfra-2.24.0 | lib/specinfra.rb |
specinfra-2.23.0 | lib/specinfra.rb |
specinfra-2.22.0 | lib/specinfra.rb |