Split test_defined
This commit is contained in:
parent
8119bcbfc0
commit
de9d6a7a8c
@ -23,24 +23,30 @@ class TestDefined < Test::Unit::TestCase
|
|||||||
return !defined?(yield)
|
return !defined?(yield)
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_defined
|
def test_defined_gloval_variable
|
||||||
$x = nil
|
$x = nil
|
||||||
|
|
||||||
assert(defined?($x)) # global variable
|
assert(defined?($x)) # global variable
|
||||||
assert_equal('global-variable', defined?($x))# returns description
|
assert_equal('global-variable', defined?($x))# returns description
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_defined_local_variable
|
||||||
assert_nil(defined?(foo)) # undefined
|
assert_nil(defined?(foo)) # undefined
|
||||||
foo=5
|
foo=5
|
||||||
assert(defined?(foo)) # local variable
|
assert(defined?(foo)) # local variable
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_defined_constant
|
||||||
assert(defined?(Array)) # constant
|
assert(defined?(Array)) # constant
|
||||||
assert(defined?(::Array)) # toplevel constant
|
assert(defined?(::Array)) # toplevel constant
|
||||||
assert(defined?(File::Constants)) # nested constant
|
assert(defined?(File::Constants)) # nested constant
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_defined_method
|
||||||
assert(defined?(Object.new)) # method
|
assert(defined?(Object.new)) # method
|
||||||
assert(defined?(Object::new)) # method
|
assert(defined?(Object::new)) # method
|
||||||
assert(!defined?(Object.print)) # private method
|
assert(!defined?(Object.print)) # private method
|
||||||
assert(defined?(1 == 2)) # operator expression
|
assert(defined?(1 == 2)) # operator expression
|
||||||
|
|
||||||
f = Foo.new
|
f = Foo.new
|
||||||
assert_nil(defined?(f.foo)) # protected method
|
assert_nil(defined?(f.foo)) # protected method
|
||||||
f.bar(f) { |v| assert(v) }
|
f.bar(f) { |v| assert(v) }
|
||||||
@ -53,10 +59,14 @@ class TestDefined < Test::Unit::TestCase
|
|||||||
assert_nil(defined?(quux(x)))
|
assert_nil(defined?(quux(x)))
|
||||||
assert(defined?(f.attr = 1))
|
assert(defined?(f.attr = 1))
|
||||||
f.attrasgn_test { |v| assert(v) }
|
f.attrasgn_test { |v| assert(v) }
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_defined_yield
|
||||||
assert(defined_test) # not iterator
|
assert(defined_test) # not iterator
|
||||||
assert(!defined_test{}) # called as iterator
|
assert(!defined_test{}) # called as iterator
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_defined_matchdata
|
||||||
/a/ =~ ''
|
/a/ =~ ''
|
||||||
assert_equal nil, defined?($&)
|
assert_equal nil, defined?($&)
|
||||||
assert_equal nil, defined?($`)
|
assert_equal nil, defined?($`)
|
||||||
@ -85,12 +95,16 @@ class TestDefined < Test::Unit::TestCase
|
|||||||
assert_equal 'global-variable', defined?($+)
|
assert_equal 'global-variable', defined?($+)
|
||||||
assert_equal 'global-variable', defined?($1)
|
assert_equal 'global-variable', defined?($1)
|
||||||
assert_equal nil, defined?($2)
|
assert_equal nil, defined?($2)
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_defined_literal
|
||||||
assert_equal("nil", defined?(nil))
|
assert_equal("nil", defined?(nil))
|
||||||
assert_equal("true", defined?(true))
|
assert_equal("true", defined?(true))
|
||||||
assert_equal("false", defined?(false))
|
assert_equal("false", defined?(false))
|
||||||
assert_equal("expression", defined?(1))
|
assert_equal("expression", defined?(1))
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_defined_empty_paren_expr
|
||||||
bug8224 = '[ruby-core:54024] [Bug #8224]'
|
bug8224 = '[ruby-core:54024] [Bug #8224]'
|
||||||
(1..3).each do |level|
|
(1..3).each do |level|
|
||||||
expr = "("*level+")"*level
|
expr = "("*level+")"*level
|
||||||
|
Loading…
x
Reference in New Issue
Block a user