|
@@ -19,9 +19,10 @@
|
|
|
package org.apache.hadoop.yarn.webapp;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
+import java.util.Random;
|
|
|
|
|
|
import org.apache.hadoop.net.ServerSocketUtil;
|
|
|
-import org.junit.Before;
|
|
|
+
|
|
|
import com.sun.jersey.test.framework.JerseyTest;
|
|
|
import com.sun.jersey.test.framework.WebAppDescriptor;
|
|
|
|
|
@@ -30,9 +31,16 @@ public abstract class JerseyTestBase extends JerseyTest {
|
|
|
super(appDescriptor);
|
|
|
}
|
|
|
|
|
|
- @Before
|
|
|
- public void initializeJerseyPort() throws IOException {
|
|
|
- int jerseyPort = ServerSocketUtil.getPort(9998, 10);
|
|
|
- System.setProperty("jersey.test.port", Integer.toString(jerseyPort));
|
|
|
+ @Override
|
|
|
+ protected int getPort(int port) {
|
|
|
+ Random rand = new Random();
|
|
|
+ int jerseyPort = port + rand.nextInt(1000);
|
|
|
+ try {
|
|
|
+ jerseyPort = ServerSocketUtil.getPort(jerseyPort, 10);
|
|
|
+ } catch (IOException e) {
|
|
|
+ // Ignore exception even after 10 times free port is
|
|
|
+ // not received.
|
|
|
+ }
|
|
|
+ return super.getPort(jerseyPort);
|
|
|
}
|
|
|
}
|