2008-01-05 13:31:04 +00:00
|
|
|
require 'abstract_unit'
|
2005-11-02 15:37:58 +00:00
|
|
|
|
2007-09-22 23:12:24 +00:00
|
|
|
class EmptyTrue
|
|
|
|
def empty?() true; end
|
|
|
|
end
|
|
|
|
|
|
|
|
class EmptyFalse
|
|
|
|
def empty?() false; end
|
|
|
|
end
|
|
|
|
|
2005-11-02 15:37:58 +00:00
|
|
|
class BlankTest < Test::Unit::TestCase
|
2007-11-14 10:02:26 +00:00
|
|
|
BLANK = [ EmptyTrue.new, nil, false, '', ' ', " \n\t \r ", [], {} ]
|
|
|
|
NOT = [ EmptyFalse.new, Object.new, true, 0, 1, 'a', [nil], { nil => 0 } ]
|
2005-11-02 15:37:58 +00:00
|
|
|
|
|
|
|
def test_blank
|
2007-11-14 10:02:26 +00:00
|
|
|
BLANK.each { |v| assert v.blank?, "#{v.inspect} should be blank" }
|
|
|
|
NOT.each { |v| assert !v.blank?, "#{v.inspect} should not be blank" }
|
2005-11-02 15:37:58 +00:00
|
|
|
end
|
2008-06-12 23:30:56 +00:00
|
|
|
|
|
|
|
def test_present
|
|
|
|
BLANK.each { |v| assert !v.present?, "#{v.inspect} should not be present" }
|
|
|
|
NOT.each { |v| assert v.present?, "#{v.inspect} should be present" }
|
|
|
|
end
|
2005-11-02 15:37:58 +00:00
|
|
|
end
|