Sha256: 0e11fdec720f906c604c1584f06db61f7379b2e875d082a9e836eb6e2b0bfcad

Contents?: true

Size: 852 Bytes

Versions: 6

Compression:

Stored size: 852 Bytes

Contents

require File.dirname(__FILE__)+'/../abstract_unit'
require 'gorillib/object/blank'

class BlankTest < Test::Unit::TestCase
  BLANK = [ EmptyTrue.new, nil, false, '', '   ', "  \n\t  \r ", [], {} ]
  NOT   = [ EmptyFalse.new, Object.new, true, 0, 1, 'a', [nil], { nil => 0 } ]

  def test_blank
    BLANK.each { |v| assert v.blank?,  "#{v.inspect} should be blank" }
    NOT.each   { |v| assert !v.blank?, "#{v.inspect} should not be blank" }
  end

  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

  def test_presence
    BLANK.each { |v| assert_equal nil, v.presence, "#{v.inspect}.presence should return nil" }
    NOT.each   { |v| assert_equal v,   v.presence, "#{v.inspect}.presence should return self" }
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
gorillib-0.0.7 test/object/blank_test.rb
gorillib-0.0.6 test/object/blank_test.rb
gorillib-0.0.5 test/object/blank_test.rb
gorillib-0.0.4 test/object/blank_test.rb
gorillib-0.0.3 test/object/blank_test.rb
gorillib-0.0.2 test/object/blank_test.rb