def __init__(self, args): self.host = args.host self.port = args.port self.tether = Tether(None, "//%s/bizlogic" % self.host, None, host=self.host, port=self.port, agent_type="bizlogic", policy="ordered") self.users = {} self.user_reread_period = 30 # seconds self.linker = Linker() self.container = Container(Processor(self)) self.container[self.tether.agent] = Agent(self.tether)
def __init__(self, rate, hostname): self.users = {} try: self.quotes = open("quotes.txt").read().split("\n") except IOError: self.quotes = [ """"On the Internet, everybody knows you're a dog." --Oscar Wilde""" ] self.last_user_reread = 0 self.user_reread_period = 30 # seconds self.bark_period = 1.0 / rate # seconds self.linker = Linker() self.hostname = hostname
def testLinker(self, address_count=1, message_count=1): self.server.max_connections = address_count linker = Linker() linker.start(self.reactor) for i in range(address_count): for j in range(message_count): snd = linker.sender("//localhost:%s/%s" % (PORT, i)) assert len(linker.senders) == i + 1 snd.send(dict(i=i, j=j)) linker.close() self.reactor.run() by_addr = dict((i,[]) for i in range(address_count)) for m in self.sink.messages: by_addr[m["i"]].append(m) for addr, msgs in by_addr.iteritems(): self.assertSequenceEqual(msgs, list(sorted(msgs, key=lambda x:(x["i"],x["j"])))) self.assertEqual(len(self.sink.messages), address_count*message_count)