summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorryan <ryan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-08-27 20:30:57 +0000
committerryan <ryan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-08-27 20:30:57 +0000
commit4c66fc089080a63f58d95877130a0a0920a409c6 (patch)
tree7339f4d3da5a2d8eb4630dc5d2826a3fa91f6aaf /test
parent0971109e3dcc8f30df79fba1ac6db174e7c7ecdc (diff)
Imported minitest 2.5.1 (r6596)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33102 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r--test/minitest/test_minitest_spec.rb37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/minitest/test_minitest_spec.rb b/test/minitest/test_minitest_spec.rb
index 26dd4ec46a..d9f6368a80 100644
--- a/test/minitest/test_minitest_spec.rb
+++ b/test/minitest/test_minitest_spec.rb
@@ -7,6 +7,11 @@
require 'minitest/autorun'
require 'stringio'
+class MiniSpecA < MiniTest::Spec; end
+class MiniSpecB < MiniTest::Spec; end
+class ExampleA; end
+class ExampleB < ExampleA; end
+
describe MiniTest::Spec do
before do
@assertion_count = 4
@@ -279,6 +284,38 @@ class TestMeta < MiniTest::Unit::TestCase
return x, y, z, before_list, after_list
end
+ def test_register_spec_type
+ original_types = MiniTest::Spec::TYPES.dup
+
+ assert_equal [[//, MiniTest::Spec]], MiniTest::Spec::TYPES
+
+ MiniTest::Spec.register_spec_type(/woot/, TestMeta)
+
+ p = lambda do |x| true end
+ MiniTest::Spec.register_spec_type TestMeta, &p
+
+ keys = MiniTest::Spec::TYPES.map(&:first)
+
+ assert_includes keys, /woot/
+ assert_includes keys, p
+ ensure
+ MiniTest::Spec::TYPES.replace original_types
+ end
+
+ def test_spec_type
+ original_types = MiniTest::Spec::TYPES.dup
+
+ MiniTest::Spec.register_spec_type(/A$/, MiniSpecA)
+ MiniTest::Spec.register_spec_type MiniSpecB do |desc|
+ desc.superclass == ExampleA
+ end
+
+ assert_equal MiniSpecA, MiniTest::Spec.spec_type(ExampleA)
+ assert_equal MiniSpecB, MiniTest::Spec.spec_type(ExampleB)
+ ensure
+ MiniTest::Spec::TYPES.replace original_types
+ end
+
def test_structure
x, y, z, * = util_structure