コード例 #1
0
    def test_list(self, value, compare_with):
        assert value != compare_with

        obj = make_type_comparable(value)
        assert isinstance(obj, UserList)
        assert_left_and_rigth(obj, value, '==')
        assert_left_and_rigth(obj, compare_with, '==')
        assert_left_and_rigth(obj, value + [0], '!=')
        assert_left_and_rigth(obj, None, '!=')
        assert obj == make_type_comparable(value)
        assert_left_and_rigth(value, make_type_comparable(compare_with), '==')
コード例 #2
0
    def test_str(self, value, compare_with):
        assert value != compare_with

        obj = make_type_comparable(value)
        assert isinstance(obj, str)
        assert_left_and_rigth(obj, value, '==')
        assert_left_and_rigth(obj, compare_with, '==')
        assert_left_and_rigth(obj, '{}-other'.format(value), '!=')
        assert_left_and_rigth(obj, None, '!=')
        assert obj == make_type_comparable(value)
        assert_left_and_rigth(value, make_type_comparable(compare_with), '==')
コード例 #3
0
    def test_bool(self, value, compare_with):
        assert value != compare_with

        obj = make_type_comparable(value)
        assert isinstance(obj, bool)

        assert_left_and_rigth(obj, value, '==')
        assert_left_and_rigth(obj, compare_with, '==')
        assert_left_and_rigth(obj, not value, '!=')
        assert_left_and_rigth(obj, None, '!=')
        assert obj == make_type_comparable(value)
        assert_left_and_rigth(value, make_type_comparable(compare_with), '==')
コード例 #4
0
    def test_dict(self, value, compare_with):
        assert value != compare_with

        obj = make_type_comparable(value)
        assert isinstance(obj, UserDict)
        assert_left_and_rigth(obj, value, '==')
        assert_left_and_rigth(obj, compare_with, '==')
        _expect = value.copy()
        _expect.update({'other_key': 'other_value'})
        assert_left_and_rigth(obj, _expect, '!=')
        assert obj != None
        assert_left_and_rigth(obj, None, '!=')
        assert obj == make_type_comparable(value)
        assert_left_and_rigth(value, make_type_comparable(compare_with), '==')
コード例 #5
0
    def test_values(self, field_int, field_str, field_bool, field_dict,
                    field_list):
        dct = self.make_simple_dict()
        expect = self.make_simple_dict()
        expect['int'] = field_int
        expect['str'] = field_str
        expect['bool'] = field_bool
        expect['dict'] = field_dict
        expect['list'] = field_list

        assert dct != expect

        obj = make_type_comparable(dct)
        assert isinstance(obj, UserDict)
        assert_left_and_rigth(obj, expect, '==')
        assert_left_and_rigth(obj['int'], field_int, '==')
        assert_left_and_rigth(obj['str'], field_str, '==')
        assert_left_and_rigth(obj['bool'], field_bool, '==')
        assert_left_and_rigth(obj['dict'], field_dict, '==')
        assert_left_and_rigth(obj['list'], field_list, '==')
        _expect = expect.copy()
        _expect.update({'additional key': 'changed'})
        assert_left_and_rigth(obj, _expect, '!=')
        _expect = expect.copy()
        _expect.update({'new key': 'new value'})
        assert_left_and_rigth(obj, _expect, '!=')
コード例 #6
0
    def test_inner_list_values(self, field_int, field_str, field_bool,
                               field_dict, field_list):
        dct = self.make_complex_list()
        expect = self.make_complex_list()
        expect[7][0] = field_int
        expect[7][1] = field_str
        expect[7][2] = field_bool
        expect[7][4] = field_dict
        expect[7][5] = field_list

        assert dct != expect

        obj = make_type_comparable(dct)
        assert isinstance(obj, UserList)
        assert obj == expect
        assert_left_and_rigth(obj[7][0], field_int, '==')
        assert_left_and_rigth(obj[7][1], field_str, '==')
        assert_left_and_rigth(obj[7][2], field_bool, '==')
        assert_left_and_rigth(obj[7][4], field_dict, '==')
        assert_left_and_rigth(obj[7][5], field_list, '==')
        _expect = expect.copy()
        _expect[7][6] = 'changed'
        assert_left_and_rigth(obj, _expect, '!=')
        assert_left_and_rigth(obj, expect + ['new value'], '!=')
コード例 #7
0
 def test_none_equal_optional(self):
     assert_left_and_rigth(make_type_comparable(None), Optional, '==')
コード例 #8
0
 def test_none_not_equal_object(self):
     assert not (make_type_comparable(None) == object)
     assert not (object == make_type_comparable(None))
コード例 #9
0
 def test_none_not_equal_any(self):
     assert not (make_type_comparable(None) == Any)
     assert not (Any == make_type_comparable(None))
コード例 #10
0
 def test_none(self):
     assert_left_and_rigth(make_type_comparable(None), None, '==')
     assert make_type_comparable(None) == make_type_comparable(None)