8000 Add assertFloatsAreIdentical/assertComplexAreIdentical to unittest (or kwarg to assertEqual)? · Issue #121039 · python/cpython · GitHub
[go: up one dir, main page]

Skip to content
Add assertFloatsAreIdentical/assertComplexAreIdentical to unittest (or kwarg to assertEqual)? #121039
Closed
@skirpichev

Description

@skirpichev

Feature or enhancement

Proposal:

Clones of assertFloatsAreIdentical() are scattered across the CPython tests:

def assertFloatsAreIdentical(self, x, y):

def assertFloatIdentical(self, x, y):

def identical(self, x, y):

def assertEqualWithSign(self, actual, expected):

Maybe it's worth to have a dedicated check?

Or a special kwarg for the assertEqual method, to workaround NAN and -0.0 values for floats/complexes.

Edit:

Or at least some support from Lib/test/support... I was adding similar helper yet in another test file and that looks odd.

Numpy has numpy.testing.assert_equal():

>>> np.testing.assert_equal([0.0], [+0.0])
>>> np.testing.assert_equal([0.0], [-0.0])
Traceback (most recent call last):
  ...
AssertionError: 
Items are not equal:
item=0

 ACTUAL: 0.0
 DESIRED: -0.0
>>> np.testing.assert_equal([np.nan], [np.nan])
>>> np.testing.assert_equal([0.0], [np.nan])
Traceback (most recent call last):
  ...
AssertionError: 
Items are not equal:
item=0

 ACTUAL: 0.0
 DESIRED: nan

Has this already been discussed elsewhere?

This is a minor feature, which does not need previous discussion elsewhere

Links to previous discussion of this feature:

No response

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    testsTests in the Lib/test dirtype-featureA feature request or enhancement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0