@@ -81,9 +81,10 @@ public void testRestartOfAcceptor() throws Exception {
8181 Acceptor acceptor = null ;
8282 Initiator initiator = null ;
8383 try {
84- acceptor = createAcceptor (testAcceptorApplication );
84+ final int port = AvailablePortFinder .getNextAvailable ();
85+ acceptor = createAcceptor (testAcceptorApplication , port );
8586 acceptor .start ();
86- initiator = createInitiator (testInitiatorApplication );
87+ initiator = createInitiator (testInitiatorApplication , port );
8788
8889 assertNotNull ("Session should be registered" , lookupSession (acceptorSessionID ));
8990
@@ -131,7 +132,8 @@ public void testQuickRestartOfAcceptor() throws Exception {
131132 try {
132133 ThreadMXBean bean = ManagementFactory .getThreadMXBean ();
133134 TestConnectorApplication testAcceptorApplication = new TestConnectorApplication ();
134- acceptor = createAcceptor (testAcceptorApplication );
135+ final int port = AvailablePortFinder .getNextAvailable ();
136+ acceptor = createAcceptor (testAcceptorApplication , port );
135137 acceptor .start ();
136138 Thread .sleep (2500L );
137139 acceptor .stop ();
@@ -152,7 +154,8 @@ public void testDoubleStartOfAcceptor() throws Exception {
152154 try {
153155 ThreadMXBean bean = ManagementFactory .getThreadMXBean ();
154156 TestConnectorApplication testAcceptorApplication = new TestConnectorApplication ();
155- acceptor = createAcceptor (testAcceptorApplication );
157+ final int port = AvailablePortFinder .getNextAvailable ();
158+ acceptor = createAcceptor (testAcceptorApplication , port );
156159 acceptor .start ();
157160 // second start should be ignored
158161 acceptor .start ();
@@ -170,7 +173,8 @@ public void testSessionsAreCleanedUp() throws Exception {
170173 Acceptor acceptor = null ;
171174 try {
172175 TestConnectorApplication testAcceptorApplication = new TestConnectorApplication ();
173- acceptor = createAcceptor (testAcceptorApplication );
176+ final int port = AvailablePortFinder .getNextAvailable ();
177+ acceptor = createAcceptor (testAcceptorApplication , port );
174178 acceptor .start ();
175179 assertEquals (1 , acceptor .getSessions ().size () );
176180 assertEquals (1 + SESSION_COUNT , Session .numSessions () );
@@ -189,7 +193,8 @@ public void testSessionsAreCleanedUpOnThreadedSocketAcceptor() throws Exception
189193 Acceptor acceptor = null ;
190194 try {
191195 TestConnectorApplication testAcceptorApplication = new TestConnectorApplication ();
192- acceptor = createAcceptorThreaded (testAcceptorApplication );
196+ final int port = AvailablePortFinder .getNextAvailable ();
197+ acceptor = createAcceptorThreaded (testAcceptorApplication , port );
193198 acceptor .start ();
194199 assertEquals (1 , acceptor .getSessions ().size () );
195200 assertEquals (1 + SESSION_COUNT , Session .numSessions () );
@@ -345,29 +350,29 @@ public void toAdmin(Message message, SessionID sessionId) {
345350 }
346351
347352
348- private Acceptor createAcceptor (TestConnectorApplication testAcceptorApplication )
353+ private Acceptor createAcceptor (TestConnectorApplication testAcceptorApplication , int port )
349354 throws ConfigError {
350355
351- SessionSettings settings = createAcceptorSettings ();
356+ SessionSettings settings = createAcceptorSettings (port );
352357
353358 MessageStoreFactory factory = new MemoryStoreFactory ();
354359 quickfix .LogFactory logFactory = new SLF4JLogFactory (new SessionSettings ());
355360 return new SocketAcceptor (testAcceptorApplication , factory , settings , logFactory ,
356361 new DefaultMessageFactory ());
357362 }
358363
359- private Acceptor createAcceptorThreaded (TestConnectorApplication testAcceptorApplication )
364+ private Acceptor createAcceptorThreaded (TestConnectorApplication testAcceptorApplication , int port )
360365 throws ConfigError {
361366
362- SessionSettings settings = createAcceptorSettings ();
367+ SessionSettings settings = createAcceptorSettings (port );
363368
364369 MessageStoreFactory factory = new MemoryStoreFactory ();
365370 quickfix .LogFactory logFactory = new SLF4JLogFactory (new SessionSettings ());
366371 return new ThreadedSocketAcceptor (testAcceptorApplication , factory , settings , logFactory ,
367372 new DefaultMessageFactory ());
368373 }
369374
370- private SessionSettings createAcceptorSettings () {
375+ private SessionSettings createAcceptorSettings (int socketAcceptPort ) {
371376 SessionSettings settings = new SessionSettings ();
372377 HashMap <Object , Object > defaults = new HashMap <>();
373378 defaults .put ("ConnectionType" , "acceptor" );
@@ -376,12 +381,12 @@ private SessionSettings createAcceptorSettings() {
376381 defaults .put ("BeginString" , "FIX.4.2" );
377382 defaults .put ("NonStopSession" , "Y" );
378383 settings .setString (acceptorSessionID , "SocketAcceptProtocol" , ProtocolFactory .getTypeString (ProtocolFactory .SOCKET ));
379- settings .setString (acceptorSessionID , "SocketAcceptPort" , "10000" );
384+ settings .setString (acceptorSessionID , "SocketAcceptPort" , String . valueOf ( socketAcceptPort ) );
380385 settings .set (defaults );
381386 return settings ;
382387 }
383388
384- private Initiator createInitiator (TestConnectorApplication testInitiatorApplication ) throws ConfigError {
389+ private Initiator createInitiator (TestConnectorApplication testInitiatorApplication , int socketConnectPort ) throws ConfigError {
385390 SessionSettings settings = new SessionSettings ();
386391 HashMap <Object , Object > defaults = new HashMap <>();
387392 defaults .put ("ConnectionType" , "initiator" );
@@ -395,7 +400,7 @@ private Initiator createInitiator(TestConnectorApplication testInitiatorApplicat
395400 settings .setString ("BeginString" , FixVersions .BEGINSTRING_FIX42 );
396401 settings .setString (initiatorSessionID , "SocketConnectProtocol" , ProtocolFactory .getTypeString (ProtocolFactory .SOCKET ));
397402 settings .setString (initiatorSessionID , "SocketConnectHost" , "127.0.0.1" );
398- settings .setString (initiatorSessionID , "SocketConnectPort" , "10000" );
403+ settings .setString (initiatorSessionID , "SocketConnectPort" , String . valueOf ( socketConnectPort ) );
399404 settings .set (defaults );
400405
401406 MessageStoreFactory factory = new MemoryStoreFactory ();
0 commit comments