Skip to content

Commit

Permalink
Merge branch 'deprecate-pending'
Browse files Browse the repository at this point in the history
Properly deprecate #pending from AS::TestCase. This has been previously
removed from master, and is now back with a deprecation instead, to avoid
people having tests breaking when upgrading an app.

Please check rails#4575 for more background.
  • Loading branch information
carlosantoniodasilva committed Nov 18, 2012
2 parents a739340 + 92da512 commit e21579f
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 2 deletions.
4 changes: 2 additions & 2 deletions activesupport/CHANGELOG.md
@@ -1,5 +1,7 @@
## Rails 4.0.0 (unreleased) ##

* Deprecate `ActiveSupport::TestCase#pending` method, use `skip` from MiniTest instead. *Carlos Antonio da Silva*

* `XmlMini.with_backend` now may be safely used with threads:

Thread.new do
Expand Down Expand Up @@ -270,8 +272,6 @@

* Add html_escape_once to ERB::Util, and delegate escape_once tag helper to it. *Carlos Antonio da Silva*

* Remove ActiveSupport::TestCase#pending method, use `skip` instead. *Carlos Antonio da Silva*

* Deprecates the compatibility method Module#local_constant_names,
use Module#local_constants instead (which returns symbols). *fxn*

Expand Down
2 changes: 2 additions & 0 deletions activesupport/lib/active_support/test_case.rb
Expand Up @@ -4,6 +4,7 @@
require 'active_support/testing/setup_and_teardown'
require 'active_support/testing/assertions'
require 'active_support/testing/deprecation'
require 'active_support/testing/pending'
require 'active_support/testing/isolation'
require 'active_support/testing/constant_lookup'
require 'active_support/core_ext/kernel/reporting'
Expand Down Expand Up @@ -40,6 +41,7 @@ def self.test_order # :nodoc:
include ActiveSupport::Testing::SetupAndTeardown
include ActiveSupport::Testing::Assertions
include ActiveSupport::Testing::Deprecation
include ActiveSupport::Testing::Pending

def self.describe(text)
if block_given?
Expand Down
14 changes: 14 additions & 0 deletions activesupport/lib/active_support/testing/pending.rb
@@ -0,0 +1,14 @@
require 'active_support/deprecation'

module ActiveSupport
module Testing
module Pending
unless defined?(Spec)
def pending(description = "", &block)
ActiveSupport::Deprecation.warn("#pending is deprecated and will be removed in Rails 4.1, please use #skip instead.")
skip(description.blank? ? nil : description)
end
end
end
end
end
6 changes: 6 additions & 0 deletions activesupport/test/test_case_test.rb
Expand Up @@ -108,5 +108,11 @@ def test_true; assert true end
test = tc.new test_name
assert_raises(Interrupt) { test.run fr }
end

def test_pending_deprecation
assert_deprecated do
pending "should use #skip instead"
end
end
end
end

0 comments on commit e21579f

Please sign in to comment.