|
1 import unittest |
|
2 |
|
3 from iro.validate import vTel |
|
4 from iro.error import NotATelNumber |
|
5 from iro.telnumber import Telnumber |
|
6 |
|
7 class testTelefonnumbers(unittest.TestCase): |
|
8 """tests for telefonnumbers""" |
|
9 |
|
10 def testMultipleTelnumbers(self): |
|
11 '''test the telefon validator''' |
|
12 ret = vTel(["0123/456(78)","+4912346785433","00123435456-658"], None) |
|
13 x=[Telnumber('+4912345678'),Telnumber('012346785433'),Telnumber('+123435456658')] |
|
14 self.failUnlessEqual(ret,x) |
|
15 |
|
16 def testInvalidTelnumbers(self): |
|
17 '''invalid telnumbers''' |
|
18 |
|
19 numbers=['xa','+1','1-23',';:+0','0123'] |
|
20 |
|
21 for number in numbers: |
|
22 with self.assertRaises(NotATelNumber) as e: |
|
23 vTel([number], None) |
|
24 self.failUnlessEqual(e.exception.number,number) |
|
25 |
|
26 with self.assertRaises(NotATelNumber) as e: |
|
27 vTel(['01234']+numbers, None) |
|
28 self.failUnlessEqual(e.exception.number,numbers[0]) |
|
29 |
|
30 def equalNumber(self, tel1, tel2): |
|
31 self.failUnlessEqual(tel1.number, tel2.number) |
|
32 self.failUnlessEqual(tel1.land, tel2.land) |
|
33 |
|
34 def testWrongNumber(self): |
|
35 telnum=Telnumber() |
|
36 self.assertRaises(NotATelNumber, telnum.createNumber, "hallo") |
|
37 self.assertRaises(NotATelNumber, telnum.createNumber, "0?242") |
|
38 |
|
39 |
|
40 def testNumber(self): |
|
41 telnum=Telnumber("0551-28293640") |
|
42 telnum2=Telnumber("+49551/28293640") |
|
43 telnum3=Telnumber("00495512829364-0") |
|
44 telnum4=Telnumber("+49(0)551-28293640") |
|
45 |
|
46 self.failUnlessEqual(telnum.land, "49") |
|
47 self.failUnlessEqual(telnum.number, "55128293640") |
|
48 |
|
49 self.equalNumber(telnum, telnum2) |
|
50 self.equalNumber(telnum, telnum3) |
|
51 self.equalNumber(telnum, telnum4) |
|
52 |
|
53 def testEqual(self): |
|
54 telnum=Telnumber("0551-28293640") |
|
55 telnum2=Telnumber("+49551/28293640") |
|
56 li=[] |
|
57 self.failUnlessEqual(telnum == telnum2, True) |
|
58 self.failUnlessEqual(telnum <> telnum2, False) |
|
59 self.failUnlessEqual(telnum, telnum2) |
|
60 self.failUnlessEqual(telnum in li,False) |
|
61 li.append(telnum) |
|
62 self.failUnlessEqual(telnum in li,True) |
|
63 self.failUnlessEqual(telnum2 in li,True) |