Sha256: fa74f0a4eb765061e0923930fad3d46e502b03a0f08ef7bb60e919c949fbccf3

Contents?: true

Size: 1.47 KB

Versions: 4

Compression:

Stored size: 1.47 KB

Contents

$:.unshift File.dirname(__FILE__) + "/../lib", File.dirname(__FILE__)

require "rubygems"

require "test/unit"
require "rr"
require "mocha"
require "dm-sweatshop"
require "webrat/sinatra"

gem "jeremymcanally-context"
gem "jeremymcanally-matchy"
gem "jeremymcanally-pending"
require "context"
require "matchy"
require "pending"

require "integrity"
require "integrity/notifier/test/fixtures"

require "helpers/expectations"

begin
  require "ruby-debug"
  require "redgreen"
rescue LoadError
end

module TestHelper
  def ignore_logs!
    Integrity.config[:log] = "/tmp/integrity.test.log"
  end

  def capture_stdout
    output = StringIO.new
    $stdout = output
    yield
    $stdout = STDOUT
    output
  end

  def silence_warnings
    $VERBOSE, v = nil, $VERBOSE
    yield
  ensure
    $VERBOSE = v
  end
end

class Test::Unit::TestCase
  class << self
    alias_method :specify, :test
  end

  include RR::Adapters::TestUnit
  include Integrity
  include TestHelper

  before(:all) do
    DataMapper.setup(:default, "sqlite3::memory:")

    require "integrity/migrations"
  end

  before(:each) do
    [Project, Build, Commit, Notifier].each(&:auto_migrate_down!)
    capture_stdout { Integrity.migrate_db }

    RR.reset

    Notifier.available.each { |n|
      Notifier.send(:remove_const, n.to_s.split(":").last.to_sym)
    }

    Notifier.available.clear
    Integrity.instance_variable_set(:@config, nil)
  end

  after(:each) do
    capture_stdout { Integrity::Migrations.migrate_down! }
  end
end

Version data entries

4 entries across 4 versions & 3 rubygems

Version Path
foca-integrity-0.1.9.3 test/helpers.rb
gforces-integrity-0.1.9.3 test/helpers.rb
gforces-integrity-0.1.9.4 test/helpers.rb
integrity-0.1.9.3 test/helpers.rb