aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib
diff options
context:
space:
mode:
authorAkira Matsuda <ronnie@dio.jp>2019-08-02 03:30:21 +0900
committerAkira Matsuda <ronnie@dio.jp>2019-08-02 05:36:38 +0900
commit8d2866bb80fbe81acb04f5b0c44f152f571fb29f (patch)
tree7a2e4a4ab0653fc8f07a40bc025b737e99a1c6ad /activesupport/lib
parent98d0f7ebd34b858f12a12dcf37ae54fdbb5cab64 (diff)
downloadrails-8d2866bb80fbe81acb04f5b0c44f152f571fb29f.tar.gz
rails-8d2866bb80fbe81acb04f5b0c44f152f571fb29f.tar.bz2
rails-8d2866bb80fbe81acb04f5b0c44f152f571fb29f.zip
You give jruby_skip & rubinius_skip a good name
This hack prevails everywhere in the codebase by being copy & pasted, and it's actually not a negative thing but a necessary thing for framework implementors, so it should better have a name and be a thing. And with this commit, activesupport/test/abstract_unit.rb now doesn't silently autoload AS::TestCase, so we're ready to establish clearner environment for running AS tests (probably in later commits)
Diffstat (limited to 'activesupport/lib')
-rw-r--r--activesupport/lib/active_support/test_case.rb2
-rw-r--r--activesupport/lib/active_support/testing/alternative_runtime_skipper.rb18
2 files changed, 20 insertions, 0 deletions
diff --git a/activesupport/lib/active_support/test_case.rb b/activesupport/lib/active_support/test_case.rb
index 0b1cefc5e1..c513c76315 100644
--- a/activesupport/lib/active_support/test_case.rb
+++ b/activesupport/lib/active_support/test_case.rb
@@ -13,6 +13,7 @@ require "active_support/testing/constant_lookup"
require "active_support/testing/time_helpers"
require "active_support/testing/file_fixtures"
require "active_support/testing/parallelization"
+require "active_support/testing/alternative_runtime_skipper"
require "concurrent/utility/processor_counter"
module ActiveSupport
@@ -143,6 +144,7 @@ module ActiveSupport
include ActiveSupport::Testing::TimeHelpers
include ActiveSupport::Testing::FileFixtures
extend ActiveSupport::Testing::Declarative
+ include ActiveSupport::Testing::AlternativeRuntimeSkipper
# test/unit backwards compatibility methods
diff --git a/activesupport/lib/active_support/testing/alternative_runtime_skipper.rb b/activesupport/lib/active_support/testing/alternative_runtime_skipper.rb
new file mode 100644
index 0000000000..f9e6eaff2f
--- /dev/null
+++ b/activesupport/lib/active_support/testing/alternative_runtime_skipper.rb
@@ -0,0 +1,18 @@
+# frozen_string_literal: true
+
+module ActiveSupport
+ module Testing
+ module AlternativeRuntimeSkipper
+ private
+ # Skips the current run on Rubinius using Minitest::Assertions#skip
+ def rubinius_skip(message = "")
+ skip message if RUBY_ENGINE == "rbx"
+ end
+
+ # Skips the current run on JRuby using Minitest::Assertions#skip
+ def jruby_skip(message = "")
+ skip message if defined?(JRUBY_VERSION)
+ end
+ end
+ end
+end