#!/usr/bin/env python

## see README in this directory
## depends on "txtorcon-tester" docker.io container existing
## (run "make txtorcon-testing" at top-level to achieve this)

import os
import atexit
import functools
import subprocess
import json
import time
import sys
from xml.dom import minidom

d = os.path.realpath(os.path.curdir)
container = subprocess.check_output(['docker', 'run', '-v', d+':/txtorcon:ro',
                                     '-d', 'txtorcon-tester', '/txtorcon/integration/timeout_tor_launch/container_run']).strip()
print 'container:', container
def kill_container(container):
    print "killing", container
    subprocess.check_output(['docker', 'kill', container])
atexit.register(functools.partial(kill_container, container))

print "waiting 15 seconds"
time.sleep(15)

print "gathering logs"
logs = subprocess.check_output(['docker', 'logs', container])

print logs
if '/usr/sbin/tor' in logs:
    sys.exit(1)
sys.exit(0)
