Sha256: 3b2f0b4d23565368bfc0dc61a17d69b3332a2a6231e7237c42fc66b7049de1c4

Contents?: true

Size: 1.4 KB

Versions: 6

Compression:

Stored size: 1.4 KB

Contents

require 'rubygems'
require 'logger'
unless Object.const_defined?('Sequel')
  $:.unshift(File.join(File.dirname(File.expand_path(__FILE__)), "../../lib/"))
  require 'sequel'
  Sequel.quote_identifiers = false
end
begin
  require File.join(File.dirname(File.dirname(File.expand_path(__FILE__))), 'spec_config.rb')
rescue LoadError
end

if ENV['SEQUEL_COLUMNS_INTROSPECTION']
  Sequel.extension :columns_introspection
  Sequel::Dataset.introspect_all_columns
end

class Sequel::Database
  def log_duration(duration, message)
    log_info(message)
  end
end

(defined?(RSpec) ? RSpec::Core::ExampleGroup : Spec::Example::ExampleGroup).class_eval do
  def log 
    begin
      INTEGRATION_DB.loggers << Logger.new(STDOUT)
      yield
    ensure
     INTEGRATION_DB.loggers.pop
    end 
  end 

  def self.log_specify(message, &block)
    specify(message){log{instance_eval(&block)}}
  end

  def self.cspecify(message, *checked, &block)
    pending = false
    checked.each do |c|
      case c
      when INTEGRATION_DB.adapter_scheme
        pending = c
      when Proc
        pending = c if c.first.call(INTEGRATION_DB)
      when Array
        pending = c if c.first == INTEGRATION_DB.adapter_scheme && c.last == INTEGRATION_DB.call(INTEGRATION_DB)
      end
    end
    if pending
      specify(message){pending("Not yet working on #{Array(pending).join(', ')}", &block)}
    else
      specify(message, &block)
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
sequel-3.27.0 spec/adapters/spec_helper.rb
sequel-3.26.0 spec/adapters/spec_helper.rb
sequel-3.25.0 spec/adapters/spec_helper.rb
sequel-3.24.1 spec/adapters/spec_helper.rb
sequel-3.24.0 spec/adapters/spec_helper.rb
sequel-3.23.0 spec/adapters/spec_helper.rb