-
- Downloads
CHOP-661: add and use code to listen on next available server port.
In indra/llmessage/tests/testrunner.py, introduce new freeport() function to try a caller-specified expression (such as instantiating an object that will listen on a server port) with a range of candidate port numbers until the expression produces a value instead of EADDRINUSE exception. Change test_llsdmessage_peer.py and test_llxmlrpc_peer.py to use freeport() to construct their server class inline BEFORE launching the thread that will run it, then pass that server's serve_forever method to daemon thread. Also set os.environ["PORT"] to selected environment variable before running subject test program. In indra/llmessage/tests/commtest.h, introduce commtest_data::getport() to read port number from specified environment variable, throwing exception if variable not set or non-numeric. Construct default LLHost from getport("PORT") instead of hardcoded constant. Change indra/newview/tests/llxmlrpclistener_test.cpp to use commtest_data:: getport("PORT") instead of hardcoded constant. Also use LLSD::with() rather than older LLSD::insert() syntax. HOWEVER -- I am irritated to discover that llxmlrpclistener_test IS NOT RUN or even built by newview/CMakeLists.txt! It's not even commented out -- it's entirely deleted! I am determined to restore this test. However, as it will take some fiddling with new link-time dependencies, that will be a separate commit.
Showing
- indra/llmessage/tests/commtest.h 19 additions, 1 deletionindra/llmessage/tests/commtest.h
- indra/llmessage/tests/test_llsdmessage_peer.py 18 additions, 8 deletionsindra/llmessage/tests/test_llsdmessage_peer.py
- indra/llmessage/tests/testrunner.py 81 additions, 0 deletionsindra/llmessage/tests/testrunner.py
- indra/newview/tests/llxmlrpclistener_test.cpp 7 additions, 4 deletionsindra/newview/tests/llxmlrpclistener_test.cpp
- indra/newview/tests/test_llxmlrpc_peer.py 13 additions, 8 deletionsindra/newview/tests/test_llxmlrpc_peer.py
Loading
Please register or sign in to comment