def testToFromAction(self): """ Test the to, from, and status callback""" r = Response() r.append(telml.Sms("Hello, World", to=1231231234, sender=3453453456, statusCallback="example.com?id=34&action=hey")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Sms from="3453453456" statusCallback="example.com?id=34&action=hey" to="1231231234">Hello, World</Sms></Response>')
def testAddConference(self): """ add a conference to a dial""" r = Response() d = telml.Dial() d.append(telml.Conference("My Room")) r.append(d) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Dial><Conference>My Room</Conference></Dial></Response>')
def testAddNumber(self): """add a number to a dial""" r = Response() d = telml.Dial() d.append(telml.Number("1231231234")) r.append(d) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Dial><Number>1231231234</Number></Dial></Response>')
def testNestedSayPlayPause(self): """ a gather with a say, play, and pause""" r = Response() g = telml.Gather() g.append(telml.Say("Hey")) g.append(telml.Play("hey.mp3")) g.append(telml.Pause()) r.append(g) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Gather><Say>Hey</Say><Play>hey.mp3</Play><Pause /></Gather></Response>')
def testEmpty(self): """ a gather with nothing inside""" r = Response() r.append(telml.Gather()) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Gather /></Response>')
def testEmpty(self): """Test empty sms verb""" r = Response() r.append(telml.Sms("")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Sms /></Response>')
def testRecordTranscribeCallback(self): """should record with a transcribe and transcribeCallback""" r = Response() r.append(telml.Record(transcribeCallback="example.com")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Record transcribeCallback="example.com" /></Response>')
def testRecordMaxlengthFinishTimeout(self): """should record with an maxlength, finishonkey, and timeout""" r = Response() r.append(telml.Record(timeout=4,finishOnKey="#", maxLength=30)) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Record finishOnKey="#" maxLength="30" timeout="4" /></Response>')
def testRecordActionMethod(self): """should record with an action and a get method""" r = Response() r.append(telml.Record(action="example.com", method="GET")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Record action="example.com" method="GET" /></Response>')
def testDial(self): """ should redirect the call""" r = Response() r.append(telml.Dial("1231231234")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Dial>1231231234</Dial></Response>')
def testSayFrench(self): """should say hello monkey""" r = Response() r.append(telml.Say(u"nécessaire et d'autres")) self.assertEquals(unicode(r), '<?xml version="1.0" encoding="utf-8"?><Response><Say>nécessaire et d\'autres</Say></Response>')
def testEmptyPlay(self): """should play hello monkey""" r = Response() r.append(telml.Play("")) r = self.strip(r) self.assertEqual(r,'<?xml version="1.0" encoding="utf-8"?><Response><Play /></Response>')
def testEmptySay(self): """should be a say with no text""" r = Response() r.append(telml.Say("")) self.assertEquals(self.strip(r), '<?xml version="1.0" encoding="utf-8"?><Response><Say /></Response>')
def testReject(self): """should be a Reject with default reason""" r = Response() r.append(telml.Reject()) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Reject /></Response>')
def testHangup(self): """convenience: should Hangup to a url via POST""" r = Response() r.append(telml.Hangup()) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Hangup /></Response>')
def testRedirectMethodGetParams(self): r = Response() r.append(telml.Redirect(url="example.com?id=34&action=hey", method="POST")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Redirect method="POST">example.com?id=34&action=hey</Redirect></Response>')
def testRedirectEmpty(self): r = Response() r.append(telml.Redirect()) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Redirect /></Response>')
def testSayHelloWorld(self): """should say hello monkey""" r = Response() r.append(telml.Say("Hello World")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Say>Hello World</Say></Response>')
def testBody(self): """Test hello world""" r = Response() r.append(telml.Sms("Hello, World")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Sms>Hello, World</Sms></Response>')
def testSayLoopWoman(self): """should say have a woman say hello monkey and loop 3 times""" r = Response() r.append(telml.Say("Hello Monkey", loop=3, voice=telml.Say.WOMAN)) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Say loop="3" voice="woman">Hello Monkey</Say></Response>')
def testActionMethod(self): """ Test the action and method parameters on Sms""" r = Response() r.append(telml.Sms("Hello", method="POST", action="example.com?id=34&action=hey")) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Sms action="example.com?id=34&action=hey" method="POST">Hello</Sms></Response>')
def testPlayHello(self): """should play hello monkey""" r = Response() r.append(telml.Play("http://hellomonkey.mp3")) r = self.strip(r) self.assertEqual(r, '<?xml version="1.0" encoding="utf-8"?><Response><Play>http://hellomonkey.mp3</Play></Response>')
def testRecordEmpty(self): """should record""" r = Response() r.append(telml.Record()) r = self.strip(r) self.assertEquals(r, '<?xml version="1.0" encoding="utf-8"?><Response><Record /></Response>')