class OtherTests(unittest.TestCase): def setUp(self): self.server = Server() def tearDown(self): UnmockClassMethods(Server) def testCreateReplyPacket(self): class TrivialPacket: source = object() def CreateReply(self, **kw): reply = TrivialObject() reply.kw = kw return reply reply = self.server.CreateReplyPacket(TrivialPacket(), one='one', two='two') self.failUnless(isinstance(reply, TrivialObject)) self.failUnless(reply.source is TrivialPacket.source) self.assertEqual(reply.kw, dict(one='one', two='two')) def testAuthProcessInput(self): fd = MockFd(1) self.server._realauthfds = [1] MockClassMethod(Server, '_GrabPacket') MockClassMethod(Server, '_HandleAuthPacket') self.server._ProcessInput(fd) self.assertEqual([x[0] for x in self.server.called], ['_GrabPacket', '_HandleAuthPacket']) self.assertEqual(self.server.called[0][1][1], fd) def testAcctProcessInput(self): fd = MockFd(1) self.server._realauthfds = [] self.server._realacctfds = [1] MockClassMethod(Server, '_GrabPacket') MockClassMethod(Server, '_HandleAcctPacket') self.server._ProcessInput(fd) self.assertEqual([x[0] for x in self.server.called], ['_GrabPacket', '_HandleAcctPacket']) self.assertEqual(self.server.called[0][1][1], fd)