[
https://issues.apache.org/jira/browse/QPID-504?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alan Conway resolved QPID-504.
------------------------------
Resolution: Fixed
Make check now starts a broker on a dynamically assigned port, so
multiple qpid builds on one host will not conflict.
* src/tests/run_test, start_broker, kill_broker:
Broker writes port to file, run_test sets QPID_PORT
in environment of all tests.
* src/tests/topic_publisher.cpp, topic_listener.cpp, client_test.cpp:
All test clients use TestOptions to parse options from args and env.
* src/qpid/Options.h: Renamed from CommonOptions.h
Simplified use of Options class.
* src/qpid/Url.h: Renamed defaultPort constant.
* src/tests/logging.cpp:
* src/tests/interop_runner.cpp:
* src/tests/TestOptions.h:
* src/qpidd.cpp:
* src/qpid/log/Options.cpp:
* src/qpid/log/Logger.cpp:
* src/qpid/broker/Broker.cpp:
Updated for changes to Options.
> Dynamic port for automated tests.
> ---------------------------------
>
> Key: QPID-504
> URL: https://issues.apache.org/jira/browse/QPID-504
> Project: Qpid
> Issue Type: Test
> Components: C++ Broker
> Reporter: Alan Conway
> Assignee: Alan Conway
>
> As development ramps up we will have multiple qpid builds on the same machine
> clashing for use of the AMQP default port.
> All automated tests should use a *dynamically assigned* (i.e. bind(0)) port.
> Allowing a manually specified port number for tests doesn't solve the problem
> as there's no way to choose
> a port that is guaranteed not to be used by any other test on the same host.
> One way to do this:
> - add qpidd --print-port option to print the actual bound port
> - add qpid option processing to qpid client library, enable in all test
> programs.
> - test harness does "qpidd --daemon --port 0 --print-port" and sets the
> printed port to QPID_PORT in env for all test clients.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.