forked from django/django
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tests.py
88 lines (83 loc) · 3.52 KB
/
tests.py
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
from __future__ import unicode_literals
from django.contrib.localflavor.gb.forms import (
GBPostcodeField, GBPhoneNumberField
)
from django.test import SimpleTestCase
class GBLocalFlavorTests(SimpleTestCase):
def test_GBPostcodeField(self):
error_invalid = ['Enter a valid postcode.']
valid = {
'BT32 4PX': 'BT32 4PX',
'GIR 0AA': 'GIR 0AA',
'BT324PX': 'BT32 4PX',
' so11aa ': 'SO1 1AA',
' so1 1aa ': 'SO1 1AA',
'G2 3wt': 'G2 3WT',
'EC1A 1BB': 'EC1A 1BB',
'Ec1a1BB': 'EC1A 1BB',
}
invalid = {
'1NV 4L1D': error_invalid,
'1NV4L1D': error_invalid,
' b0gUS': error_invalid,
}
self.assertFieldOutput(GBPostcodeField, valid, invalid)
valid = {}
invalid = {
'1NV 4L1D': ['Enter a bloody postcode!'],
}
kwargs = {'error_messages': {'invalid': 'Enter a bloody postcode!'}}
self.assertFieldOutput(GBPostcodeField, valid, invalid, field_kwargs=kwargs)
def test_GBPhoneNumberField(self):
error_format = ['Phone numbers must be in +XXXXXXXXXXX format.']
valid = {
'020 3000 5555': '+44 20 3000 5555',
'(020) 3000 5555': '+44 20 3000 5555',
'+44 20 3000 5555': '+44 20 3000 5555',
'0203 000 5555': '+44 20 3000 5555',
'(0203) 000 5555': '+44 20 3000 5555',
'02030 005 555': '+44 20 3000 5555',
'+44 (0) 20 3000 5555': '+44 20 3000 5555',
'+44(0)203 000 5555': '+44 20 3000 5555',
'00 (44) 2030 005 555': '+44 20 3000 5555',
'(+44 203) 000 5555': '+44 20 3000 5555',
'(+44) 203 000 5555': '+44 20 3000 5555',
'011 44 203 000 5555': '+44 20 3000 5555',
'020-3000-5555': '+44 20 3000 5555',
'(020)-3000-5555': '+44 20 3000 5555',
'+44-20-3000-5555': '+44 20 3000 5555',
'0203-000-5555': '+44 20 3000 5555',
'(0203)-000-5555': '+44 20 3000 5555',
'02030-005-555': '+44 20 3000 5555',
'+44-(0)-20-3000-5555': '+44 20 3000 5555',
'+44(0)203-000-5555': '+44 20 3000 5555',
'00-(44)-2030-005-555': '+44 20 3000 5555',
'(+44-203)-000-5555': '+44 20 3000 5555',
'(+44)-203-000-5555': '+44 20 3000 5555',
'011-44-203-000-5555': '+44 20 3000 5555',
'0114 223 4567': '+44 114 223 4567',
'01145 345 567': '+44 114 534 5567',
'+44 1213 456 789': '+44 121 345 6789',
'00 44 (0) 1697 73555': '+44 16977 3555',
'011 44 11 4890 2345': '+44 114 890 2345',
'020 3000 5000': '+44 20 3000 5000',
'0121 555 7777': '+44 121 555 7777',
'01750 615777': '+44 1750 615777',
'019467 55555': '+44 19467 55555',
'01750 62555': '+44 1750 62555',
'016977 3555': '+44 16977 3555',
'0500 777888': '+44 500 777888'
}
invalid = {
'011 44 203 000 5555 5': error_format,
'+44 20 300 5555': error_format,
'025 4555 6777': error_format,
'0119 456 4567': error_format,
'0623 111 3456': error_format,
'0756 334556': error_format,
'020 5000 5000': error_format,
'0171 555 7777': error_format,
'01999 777888': error_format,
'01750 61777': error_format
}
self.assertFieldOutput(GBPhoneNumberField, valid, invalid)