Sha256: df618a2ad8f303031512f76a400d7ceb88b02111ddee87d0348ad4a0b3f9524f

Contents?: true

Size: 1.27 KB

Versions: 9

Compression:

Stored size: 1.27 KB

Contents

###
### $Rev$
### $Release: 0.7.2 $
### copyright(c) 2005-2010 kuwata-lab all rights reserved.
###

require 'test/unit/testcase'
require 'tempfile'


class Test::Unit::TestCase  # :nodoc:

  def assert_text_equal(expected, actual, message=nil, options={}) # :nodoc:
    expected = expected.to_s
    actual   = actual.to_s
    diffopt  = options[:diffopt] || '-u'
    flag_cut = options.key?(:cut) ? options[:key] : true

    if expected == actual
      assert(true)
      return
    end
    if expected[-1] != ?\n || actual[-1] != ?\n
      expected += "\n"
      actual   += "\n"
    end
    begin
      expfile = Tempfile.new(".expected.")
      expfile.write(expected); expfile.flush()
      actfile = Tempfile.new(".actual.")
      actfile.write(actual);   actfile.flush()
      diff = `diff #{diffopt} #{expfile.path} #{actfile.path}`
    ensure
      expfile.close(true) if expfile
      actfile.close(true) if actfile
    end
    # cut 1st & 2nd lines
    message = (flag_cut ? diff.gsub(/\A.*\n.*\n/, '') : diff) unless message
    #raise Test::Unit::AssertionFailedError.new(message)
    assert_block(message) { false }  # or assert(false, message)
  end

  alias assert_equal_with_diff assert_text_equal    # for compatibility
  alias assert_text_equals     assert_text_equal    # for typo

end

Version data entries

9 entries across 7 versions & 4 rubygems

Version Path
dc-kwalify-1.0.0 lib/kwalify/util/assert-text-equal.rb
dc-kwalify-0.7.2 lib/kwalify/util/assert-text-equal.rb
config_gems_initialization_aim-0.1.4 vendor/bundle/ruby/2.5.0/gems/kwalify-0.7.2/lib/kwalify/util/assert-text-equal.rb
config_gems_initialization_aim-0.1.4 vendor/bundle/ruby/2.5.0/gems/config_gems_initialization_aim-0.1.1/vendor/bundle/ruby/2.5.0/gems/kwalify-0.7.2/lib/kwalify/util/assert-text-equal.rb
config_gems_initialization_aim-0.1.3 vendor/bundle/ruby/2.5.0/gems/kwalify-0.7.2/lib/kwalify/util/assert-text-equal.rb
config_gems_initialization_aim-0.1.3 vendor/bundle/ruby/2.5.0/gems/config_gems_initialization_aim-0.1.1/vendor/bundle/ruby/2.5.0/gems/kwalify-0.7.2/lib/kwalify/util/assert-text-equal.rb
tpkg-2.3.5 lib/tpkg/thirdparty/kwalify-0.7.2/lib/kwalify/util/assert-text-equal.rb
tpkg-2.3.4 lib/tpkg/thirdparty/kwalify-0.7.2/lib/kwalify/util/assert-text-equal.rb
kwalify-0.7.2 lib/kwalify/util/assert-text-equal.rb