From 8d2866bb80fbe81acb04f5b0c44f152f571fb29f Mon Sep 17 00:00:00 2001 From: Akira Matsuda Date: Fri, 2 Aug 2019 03:30:21 +0900 Subject: 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) --- activesupport/lib/active_support/test_case.rb | 2 ++ .../testing/alternative_runtime_skipper.rb | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 activesupport/lib/active_support/testing/alternative_runtime_skipper.rb (limited to 'activesupport/lib') 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 -- cgit v1.2.3