|
135 | 135 | (validate_ipv4_address, '1.1.1.1\n', ValidationError), |
136 | 136 | (validate_ipv4_address, '٧.2٥.3٣.243', ValidationError), |
137 | 137 |
|
| 138 | + # Leading zeros are forbidden to avoid ambiguity with the octal notation. |
| 139 | + (validate_ipv4_address, '000.000.000.000', ValidationError), |
| 140 | + (validate_ipv4_address, '016.016.016.016', ValidationError), |
| 141 | + (validate_ipv4_address, '192.168.000.001', ValidationError), |
| 142 | + (validate_ipv4_address, '01.2.3.4', ValidationError), |
| 143 | + (validate_ipv4_address, '01.2.3.4', ValidationError), |
| 144 | + (validate_ipv4_address, '1.02.3.4', ValidationError), |
| 145 | + (validate_ipv4_address, '1.2.03.4', ValidationError), |
| 146 | + (validate_ipv4_address, '1.2.3.04', ValidationError), |
| 147 | + |
138 | 148 | # validate_ipv6_address uses django.utils.ipv6, which |
139 | 149 | # is tested in much greater detail in its own testcase |
140 | 150 | (validate_ipv6_address, 'fe80::1', None), |
|
160 | 170 | (validate_ipv46_address, '::zzz', ValidationError), |
161 | 171 | (validate_ipv46_address, '12345::', ValidationError), |
162 | 172 |
|
| 173 | + # Leading zeros are forbidden to avoid ambiguity with the octal notation. |
| 174 | + (validate_ipv46_address, '000.000.000.000', ValidationError), |
| 175 | + (validate_ipv46_address, '016.016.016.016', ValidationError), |
| 176 | + (validate_ipv46_address, '192.168.000.001', ValidationError), |
| 177 | + (validate_ipv46_address, '01.2.3.4', ValidationError), |
| 178 | + (validate_ipv46_address, '01.2.3.4', ValidationError), |
| 179 | + (validate_ipv46_address, '1.02.3.4', ValidationError), |
| 180 | + (validate_ipv46_address, '1.2.03.4', ValidationError), |
| 181 | + (validate_ipv46_address, '1.2.3.04', ValidationError), |
| 182 | + |
163 | 183 | (validate_comma_separated_integer_list, '1', None), |
164 | 184 | (validate_comma_separated_integer_list, '12', None), |
165 | 185 | (validate_comma_separated_integer_list, '1,2', None), |
|
0 commit comments