Exemple #1
0
def testFactory(factory, data, clients=100):
  '''Tests the given factory with the given data packets.'''

  from base import Server

  port = process.randomPort()

  print 'Starting', factory, 'with', factory.protocol, 'on port', port
  server = Server(('', port), factory)
  server.serve()

  jobs = []
  for c in range(0, clients):
    jobs.append(gevent.spawn(testSendData, data, port))

  gevent.joinall(jobs, timeout=15)
  vals = [(1 if job.value else 0) for job in jobs]
  print sum(vals), '/', len(vals), 'succeeded'

  return sum(vals) * 1.0 / len(vals)