def assert_dicts_equal(
        left,
        right,
        ignore_keys=None,
        message="expected %(left)r == %(right)r [left has:%(extra_left)r, right has:%(extra_right)r]",
        msg=None,
):
    """Assert that two dictionarys are equal (optionally ignoring certain keys)."""
    if msg:
        warnings.warn("msg is deprecated", DeprecationWarning)
        message = msg

    if ignore_keys is not None:
        left = dict((k, left[k]) for k in left if k not in ignore_keys)
        right = dict((k, right[k]) for k in right if k not in ignore_keys)

    if left == right:
        return

    extra_left = _dict_subtract(left, right)
    extra_right = _dict_subtract(right, left)
    raise AssertionError(message % {
        'left': left,
        'right': right,
        'extra_left': extra_left,
        'extra_right': extra_right,
    })
dataset/ETHPy150Open Yelp/Testify/testify/assertions.py/assert_dicts_equal/original