Closed aaaaalbert closed 10 years ago
What a fun little bug! ut_seash_subprocess
fails to start the test nodemanager (as the nodemanager repo, and thus nmmain.py
, is not listed in seash
's dependencies). Thus, the keys that ut_seash_setup
waits for are never advertised, and it waits indefinitely.
When the nodemanager is started correctly, the problem does not appear. I'm thus adding it to the dependencies lists. I'll also make ut_seash_setup
raise an error if the nodemanager appears to have a problem on startup (i.e. it or the Python interpreter prints to stderr
).
There is a bigger issue hidden in this as well: utf
's funcion test_module
doesn't expect the _subprocess
scripts of modules to ever fail. Thus, the subprocess/setup scripts cannot keep utf
from starting a test run by raising errors.
I've documented utf
's problem with errors in _subprocess
/ _setup
scripts in SeattleTestbed/utf#53.
When running unit tests for the whole
seash
module (or single tests),ut_seash_subprocess.py
sets up a test nodemanager, andut_seash_setup.py
polls the advertise services for the test users' public key. Only when the user keys are advertised, the rest of the unit tests can be started. Otherwise, they will likely fail as they cannot find contact information for the test nodemanager.As @us341, @choksi81, @XuefengHuang, and @asm582 have been reporting, the unit tests currently hang running the setup script. The problem is that the test user pubkeys are never found on the advertise services. I'm looking into the reasons for this now.