aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/core_ext/class_test.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2007-06-25 18:22:31 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2007-06-25 18:22:31 +0000
commit3aadfcef88e57b3f0a0bde9a2bc05d372e2fd93b (patch)
tree9b1e05803d0c60aa39a3ff6a037bf77fb9f4a164 /activesupport/test/core_ext/class_test.rb
parent2cda5096b8c02b1fbabc2857472ee03d7ecfe047 (diff)
downloadrails-3aadfcef88e57b3f0a0bde9a2bc05d372e2fd93b.tar.gz
rails-3aadfcef88e57b3f0a0bde9a2bc05d372e2fd93b.tar.bz2
rails-3aadfcef88e57b3f0a0bde9a2bc05d372e2fd93b.zip
Improve various test coverage. Closes #8676 [kamal]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7117 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport/test/core_ext/class_test.rb')
-rw-r--r--activesupport/test/core_ext/class_test.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/class_test.rb b/activesupport/test/core_ext/class_test.rb
index bcb96f5e33..e1b38a1e07 100644
--- a/activesupport/test/core_ext/class_test.rb
+++ b/activesupport/test/core_ext/class_test.rb
@@ -33,4 +33,14 @@ class ClassTest < Test::Unit::TestCase
Class.remove_class(Y::Z::C)
assert_raises(NameError) { Y::Z::C.is_a?(Class) }
end
+
+ def test_retrieving_subclasses
+ @parent = eval("class D; end; D")
+ @sub = eval("class E < D; end; E")
+ @subofsub = eval("class F < E; end; F")
+ assert @parent.subclasses.all? { |i| [@sub.to_s, @subofsub.to_s].include?(i) }
+ assert_equal 2, @parent.subclasses.size
+ assert_equal [@subofsub.to_s], @sub.subclasses
+ assert_equal [], @subofsub.subclasses
+ end
end