def test_parsing(self): for line in self.canonicalStrings: self.assertFalse(SIPRequestStartLine.canMatchString(line)) self.assertTrue(SIPResponseStartLine.canMatchString(line)) startLine = SIPResponseStartLine.newParsedFrom(line) self.assertFalse(startLine.isRequest) self.assertTrue(startLine.isResponse) self.assertFalse(startLine.isMalformed) self.assertEqual(startLine.rawString, line) self.assertIsInstance(startLine.statusCode, (int, long)) self.assertIsInstance(startLine.reasonPhrase, basestring) startLine.rawString = "SIP/2.0 200 OK" self.assertEqual(200, startLine.statusCode) self.assertEqual("OK", startLine.reasonPhrase) self.assertEqual("SIP/2.0 200 OK", startLine.rawString) self.assertEqual(100, SIPResponseStartLine.newParsedFrom(self.canonicalStrings[0]).statusCode) self.assertEqual('Trying', SIPResponseStartLine.newParsedFrom(self.canonicalStrings[0]).reasonPhrase) self.assertEqual(100, SIPResponseStartLine.newParsedFrom(self.canonicalStrings[1]).statusCode) self.assertEqual('Trying and trying and trying', SIPResponseStartLine.newParsedFrom(self.canonicalStrings[1]).reasonPhrase)