diff options
Diffstat (limited to 'networks/hidden-service')
-rw-r--r-- | networks/hidden-service | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/networks/hidden-service b/networks/hidden-service index 897ce80..d45954c 100644 --- a/networks/hidden-service +++ b/networks/hidden-service @@ -34,6 +34,46 @@ DelayedHiddenService = Node( hiddenservicetarget="127.0.0.1:8082" ) +# Use twisted to create web servers in this script +class Site(resource.Resource): + isLeaf = True + numberRequests = 0 + + def __init__(self, siteNum): + self.siteNum = siteNum + + def render_GET(self, request): + self.numberRequests += 1 + request.setHeader("content-type", "text/plain") + return str(self.siteNum) + +def start_test(): + print("Starting test") + + port8081 = reactor.listenTCP(8081, server.Site(Site(1))) + port8082 = reactor.listenTCP(8082, server.Site(Site(2))) + + def cleanup(): + port8081.stopListening() + print("stopped 8081") + port8082.stopListening() + print("stopped 8082") + reactor.stop() + print("stopped the reactor") + + responses = {"1": 0, "2": 0} + + def done(response): + print("code %s" % response.code) + + if response.code == 200: + content = yield treq.content(resp) + responses[site]++ + + get("http://127.0.0.1:8081/").addCallback(done) + + reactor.run(installSignalHandlers=0) + def start(): print("Starting hidden service test") @@ -42,9 +82,16 @@ def start(): else: print("All initial nodes running") + def start_listener(logevent): + # Probably after what needs waiting for + if "Successfully uploaded v2 rend descriptors" in logevent.message: + start_test() + def log_listener(logevent): if "Successfully uploaded v2 rend descriptors" in logevent.message: print("log message: " + logevent.message) DelayedHiddenService.getController().start() + DelayedHiddenService.getStemController().add_event_listener(start_listener, EventType.INFO) + HiddenService.getStemController().add_event_listener(log_listener, EventType.INFO) |