Project

General

Profile

Actions

Bug #10745

closed

Special combinations of parameters in assert_equal (test/unit) may cause exceptions

Added by herwinw (Herwin Quarantainenet) over 9 years ago. Updated over 9 years ago.

Status:
Rejected
Assignee:
-
Target version:
-
[ruby-core:67609]

Description

require 'test/unit'
require 'ipaddr'

class TestX < Test::Unit::TestCase
  def test_x
    assert_equal([IPAddr.new('1.2.3.4')], [[1,2,3]])
  end
end

This results in the following trace:

NoMethodError: undefined method `to_i' for [1, 2, 3]:Array
    /usr/lib/ruby/2.1.0/ipaddr.rb:471:in `initialize'
    /usr/lib/ruby/2.1.0/ipaddr.rb:516:in `new'
    /usr/lib/ruby/2.1.0/ipaddr.rb:516:in `coerce_other'
    /usr/lib/ruby/2.1.0/ipaddr.rb:150:in `=='
    /usr/lib/ruby/2.1.0/test/unit/assertions.rb:250:in `=='
    /usr/lib/ruby/2.1.0/test/unit/assertions.rb:250:in `assert_equal'

I don't think the assert_equal is supposed to throw these kind of errors

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0