def setUp(self): super(_TestAMP, self).setUp() self.account = mommy.make("accounts.AccountDB", id=1) self.server = server.Evennia(MagicMock()) self.server.sessions.data_in = MagicMock() self.server.sessions.data_out = MagicMock() self.amp_client_factory = amp_client.AMPClientFactory(self.server) self.amp_client = self.amp_client_factory.buildProtocol("127.0.0.1") self.session = MagicMock() # serversession.ServerSession() self.session.sessid = 1 self.server.sessions[1] = self.session self.portal = portal.Portal(MagicMock()) self.portalsession = session.Session() self.portalsession.sessid = 1 self.portal.sessions[1] = self.portalsession self.portal.sessions.data_in = MagicMock() self.portal.sessions.data_out = MagicMock() self.amp_server_factory = amp_server.AMPServerFactory(self.portal) self.amp_server = self.amp_server_factory.buildProtocol("127.0.0.1")
if AMP_ENABLED: # The AMP protocol handles the communication between # the portal and the mud server. Only reason to ever deactivate # it would be during testing and debugging. ifacestr = "" if AMP_INTERFACE != "127.0.0.1": ifacestr = "-%s" % AMP_INTERFACE INFO_DICT["amp"] = "amp %s: %s" % (ifacestr, AMP_PORT) from evennia.server import amp_client factory = amp_client.AMPClientFactory(EVENNIA) amp_service = internet.TCPClient(AMP_HOST, AMP_PORT, factory) amp_service.setName("ServerAMPClient") EVENNIA.services.addService(amp_service) if WEBSERVER_ENABLED: # Start a django-compatible webserver. from evennia.server.webserver import ( DjangoWebRoot, WSGIWebServer, Website, LockableThreadPool, PrivateStaticRoot, )