tests/smstrade.py
branchdevel
changeset 186 b381eaa774ab
parent 183 07ee5543751b
child 213 3620bacf1152
equal deleted inserted replaced
185:8ad6c097bc5b 186:b381eaa774ab
    11 PORT = 9999
    11 PORT = 9999
    12 
    12 
    13 class TestSMStradeProvider(unittest.TestCase):
    13 class TestSMStradeProvider(unittest.TestCase):
    14 
    14 
    15     def getProvider(self, c=None):
    15     def getProvider(self, c=None):
    16         ret={"key":"XXXXXX",
    16         _c={"key":"XXXXXXXX",
    17             "typ":"smstrade",
    17             "typ":"smstrade",
    18             }
    18             }
    19 
    19 
    20         if c:
    20         if c:
    21             ret.update(c)
    21             _c.update(c)
    22 
    22 
    23         return Smstrade("test",ret.items())
    23         ret = Smstrade("test")
       
    24         ret.load(_c.items())
       
    25         return ret
    24 
    26 
    25     @patch("urllib.urlopen")
    27     @patch("urllib.urlopen")
    26     def testSendSMS(self,mock_urlopen):
    28     def testSendSMS(self,mock_urlopen):
    27         f = Mock()
    29         f = Mock()
    28         f.readlines.return_value = ["100","12345678","0.055","1"]
    30         f.readlines.return_value = ["100","12345678","0.055","1"]
    29         mock_urlopen.return_value = f
    31         mock_urlopen.return_value = f
    30 
    32 
    31         params = ["key=XXXXXX","to=00491701234567", "message=Hello+World", "route=gold", "message_id=1", "cost=1","count=1",'charset=utf-8']
    33         params = ["key=XXXXXXXX","to=00491701234567", "message=Hello+World", "route=gold", "message_id=1", "cost=1","count=1",'charset=utf-8']
    32         params.sort()
    34         params.sort()
    33         
    35         
    34         p=self.getProvider()
    36         p=self.getProvider()
    35         content = "Hello World"
    37         content = "Hello World"
    36         p.send("gold",SMS(content,None), Telnumber("01701234567"))
    38         p.send("gold",SMS(content,None), Telnumber("01701234567"))
    47         pass
    49         pass
    48     
    50     
    49     testStatusCode.todo = "to implement"
    51     testStatusCode.todo = "to implement"
    50 
    52 
    51     def testNeededOption(self):
    53     def testNeededOption(self):
    52         c={"key":"XXXXXXXX","typ":"smstrade"}
    54         s= self.getProvider()
    53         s=Smstrade("test",c.items())
       
    54         self.assertEqual(s.key, "XXXXXXXX")
    55         self.assertEqual(s.key, "XXXXXXXX")
    55 
    56 
    56         self.assertRaises(NeededOption,Smstrade,"test",[])
    57         self.assertRaises(NeededOption, s.load,[])
    57 
    58 
    58     def testSendFunc(self):
    59     def testSendFunc(self):
    59         s = self.getProvider()
    60         s = self.getProvider()
    60         p = s.getSendFunc("sms","basic")
    61         p = s.getSendFunc("sms","basic")
    61         self.assertEqual(p.func, s.send)
    62         self.assertEqual(p.func, s.send)