Details
-
Test
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
Ports 8888 and 7070 are hardcoded in axis2-war test suite. This prevents from running multiple builds concurrently.
Ports used by test cases should be configurable through system properties for instance.
The system proprety "test.ports" accepts a coma separated list of ports that might be used by test cases. Based on this list Axis2TestBase creates a set of properties named:
test,port.0, test.port.1, and so on
For instance test.ports=8888,7070 creates test.port.0=8888 and test.port.1=7070.
When building ODE, "test.ports" can be set from the command line by using the TEST_PORTS env variable.
Like: $ buildr test TEST_P0RTS=9999,7777
Test cases must then use these properties to start their services. For instance Axis2TestBase starts axis2 webapp on port "test.port.0", a Jetty instance runs on "test.port.1".
Samples processes do not have to worry about the port they are deployed on. This is handled by Axis2. However the url of external services must be set through endpoint properties like:
alias.sample-ns=http://sample04.policy.samples.rampart.apache.org
sample-ns.sample04-policy.ode.address=http://localhost:${test.port.0}/axis2/processes/sample04-policy