summaryrefslogtreecommitdiff
path: root/tests/functional/c/consider/consider_using_min_max_builtin.py
blob: 6e7c7b88647d6ff566e9082a2f17de118c11aa51 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# pylint: disable=missing-docstring, invalid-name, too-few-public-methods, redefined-outer-name

value = 10
value2 = 0
value3 = 3

# Positive
if value < 10:  # [consider-using-max-builtin]
    value = 10

if value >= 10:  # [consider-using-min-builtin]
    value = 10

if value <= 10:  # [consider-using-max-builtin]
    value = 10

if value > 10:  # [consider-using-min-builtin]
    value = 10

if value < value2:  # [consider-using-max-builtin]
    value = value2

if value > value2:  # [consider-using-min-builtin]
    value = value2


class A:
    def __init__(self):
        self.value = 13


A1 = A()
if A1.value > 10:  # [consider-using-min-builtin]
    A1.value = 10


class AA:
    def __init__(self, value):
        self.value = value

    def __gt__(self, b):
        return self.value > b

    def __ge__(self, b):
        return self.value >= b

    def __lt__(self, b):
        return self.value < b

    def __le__(self, b):
        return self.value <= b


A1 = AA(0)
A2 = AA(3)

if A1 > A2:  # [consider-using-min-builtin]
    A1 = A2

if A2 < A1:  # [consider-using-max-builtin]
    A2 = A1

if A1 >= A2:  # [consider-using-min-builtin]
    A1 = A2

if A2 <= A1:  # [consider-using-max-builtin]
    A2 = A1

# Negative
if value > 10:
    value = 2

if value > 10:
    value = 2
    value2 = 3

if value > value2:
    value = value3

if value > 5:
    value = value3

if 2 < value <= 3:
    value = 1

if value <= 3:
    value = 5

if value <= 3:
    value = 5
elif value == 3:
    value = 2

if value > 10:
    value = 10
else:
    value = 3


# https://github.com/PyCQA/pylint/issues/4379
var = 1
if var == -1:
    var = None

var2 = 1
if var2 in [1, 2]:
    var2 = None