diff options
Diffstat (limited to 'activesupport/lib/active_support/testing/pending.rb')
-rw-r--r-- | activesupport/lib/active_support/testing/pending.rb | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/activesupport/lib/active_support/testing/pending.rb b/activesupport/lib/active_support/testing/pending.rb new file mode 100644 index 0000000000..d945c7e476 --- /dev/null +++ b/activesupport/lib/active_support/testing/pending.rb @@ -0,0 +1,43 @@ +# Some code from jeremymcanally's "pending" +# http://github.com/jeremymcanally/pending/tree/master + +module ActiveSupport + module Testing + module Pending + + unless defined?(Spec) + + @@pending_cases = [] + @@at_exit = false + + def pending(description = "", &block) + if block_given? + failed = false + + begin + block.call + rescue Exception + failed = true + end + + flunk("<#{description}> did not fail.") unless failed + end + + caller[0] =~ (/(.*):(.*):in `(.*)'/) + @@pending_cases << "#{$3} at #{$1}, line #{$2}" + print "P" + + @@at_exit ||= begin + at_exit do + puts "\nPending Cases:" + @@pending_cases.each do |test_case| + puts test_case + end + end + end + end + end + + end + end +end
\ No newline at end of file |