@@ -14,30 +14,34 @@ def testMaxMessageArgs(self):
14
14
# this device is much more complicated than
15
15
# most, so is tucked away in mock.device
16
16
device = MockSenderDevice ()
17
- gsm = pygsm .GsmModem (device = device , mode = "PDU" )
18
-
19
- # test with no max_message arg
20
- gsm .send_sms ("1234" , "Test Message" )
21
- self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
22
- self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
23
-
24
- # test with reasonable max_message arg, should have no impact
25
- gsm .send_sms ("1234" , "Test Message" , max_messages = 20 )
26
- self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
27
- self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
28
-
29
- # test with max_message = 0, should internally set to 1 with no problems
30
- gsm .send_sms ("1234" , "Test Message" , - 1 )
31
- self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
32
- self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
33
-
34
- # test with max_message > 255, should internally force to 255
35
- gsm .send_sms ("1234" , "Test Message" , 1024 )
36
- self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
37
- self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
38
-
17
+ gsmPDU = pygsm .GsmModem (device = device , mode = "PDU" )
18
+ gsmTEXT = pygsm .GsmModem (device = device , mode = "TEXT" )
19
+
20
+ for gsm in (gsmPDU , gsmTEXT ):
21
+ # test with no max_message arg
22
+ gsm .send_sms ("1234" , "Test Message" )
23
+ self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
24
+ self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
25
+
26
+ # test with reasonable max_message arg, should have no impact
27
+ gsm .send_sms ("1234" , "Test Message" , max_messages = 20 )
28
+ self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
29
+ self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
30
+
31
+ # test with max_message = 0, should internally set to 1 with no problems
32
+ gsm .send_sms ("1234" , "Test Message" , - 1 )
33
+ self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
34
+ self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
35
+
36
+ # test with max_message > 255, should internally force to 255
37
+ gsm .send_sms ("1234" , "Test Message" , 1024 )
38
+ self .assertEqual (device .sent_messages [0 ]["recipient" ], "21" )
39
+ self .assertEqual (device .sent_messages [0 ]["text" ], "00110004A821430000AA0CD4F29C0E6A96E7F3F0B90C" )
40
+
39
41
# test with max_message = 1 and message too long to fit
40
42
# should throw a value exception
43
+ #
44
+ # ONLY SUPPORTED IN PDU MODE, so run on PDU configured gsmmodem only
41
45
msg = """
42
46
0123456789012345678901234567890123456789012345678901234567890123456789
43
47
0123456789012345678901234567890123456789012345678901234567890123456789
@@ -48,12 +52,12 @@ def testMaxMessageArgs(self):
48
52
0123456789012345678901234567890123456789012345678901234567890123456789
49
53
"""
50
54
try :
51
- gsm .send_sms ("1234" , msg , max_messages = 1 )
55
+ gsmPDU .send_sms ("1234" , msg , max_messages = 1 )
52
56
except ValueError :
53
57
print "ValueError caught"
54
58
else :
55
59
# Should have thrown an error!
56
- self .assertTrue (False )
60
+ self .assertTrue (False ) # SMS too big should throw ValueError
57
61
58
62
def testSendSmsPDUMode (self ):
59
63
"""Checks that the GsmModem in PDU mode accepts outgoing SMS,
0 commit comments