Sha256: 46d71494dcc8fb611a9ec03c8aaca2611a0f4db45d35b795458bdc4ec252928d

Contents?: true

Size: 1.72 KB

Versions: 35

Compression:

Stored size: 1.72 KB

Contents

require File.dirname(__FILE__) + '/../../../spec_helper'


if ActiveSupport.const_defined?(:Callbacks) && Test::Unit::TestCase.include?(ActiveSupport::Callbacks)

  class TestUnitTesting < Test::Unit::TestCase
    @@setup_callback_count = 0
    @@setup_method_count = 0
    @@teardown_callback_count = 0
    @@teardown_method_count = 0
    cattr_accessor :setup_callback_count, :setup_method_count, :teardown_callback_count, :teardown_method_count
    
    setup :do_some_setup
    teardown :do_some_teardown
    
    @@has_been_run = false
    def self.run?
      @@has_been_run
    end

    def self.run(options=Spec::Runner.options)
      super options
    end
    
    def do_some_setup
      @@setup_callback_count += 1
    end
    
    def setup
      @@setup_method_count += 1
    end
    
    def test_something
      assert_equal true, true
      @@has_been_run = true
    end
    
    def teardown
      @@teardown_method_count += 1
    end
    
    def do_some_teardown
      @@teardown_callback_count += 1
    end
  end

  module Test
    module Unit
      describe "Running TestCase tests" do
        before(:all) do
          TestUnitTesting.run unless TestUnitTesting.run?
        end
        
        it "should call the setup callbacks" do
          TestUnitTesting.setup_callback_count.should == 1
        end
        it "should still only call the normal setup method once" do
          TestUnitTesting.setup_method_count.should == 1
        end
        it "should call the teardown callbacks" do
          TestUnitTesting.teardown_callback_count.should == 1
        end
        it "should still only call the normal teardown method once" do
          TestUnitTesting.teardown_method_count.should == 1
        end
      end
    end
  end
  
end

Version data entries

35 entries across 35 versions & 5 rubygems

Version Path
cavalle-rspec-rails-1.2.2.0.1 spec/spec/rails/interop/testcase_spec.rb
cavalle-rspec-rails-1.2.2.0.2 spec/spec/rails/interop/testcase_spec.rb
cavalle-rspec-rails-1.2.3.1 spec/spec/rails/interop/testcase_spec.rb
cavalle-rspec-rails-1.2.4.0.1 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.11.4 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.11.5 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.11.6 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.11.7 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.12 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.1 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.13 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.2 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.3 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.4 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.5 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.6 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.7 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.8 spec/spec/rails/interop/testcase_spec.rb
dchelimsky-rspec-rails-1.1.99.9 spec/spec/rails/interop/testcase_spec.rb
mcmire-rspec-rails-1.1.99.9 spec/spec/rails/interop/testcase_spec.rb