You can specify server ready timeout via 'server.ready.timeout.seconds'
system property. Then you do not have to perform sleep in your logic and
Sling Testing fwk would take care of that

Chetan Mehrotra


On Sun, Aug 5, 2012 at 2:18 PM, Bhathiya Jayasekara
<[email protected]>wrote:

> Hi all,
>
> When I run OsgiConsoleTest class as a junit test (in eclipse), I get
> this[1] error. But when I add LINE_X in [2], it works fine. Is there any
> known reason for this? I would like to know if there is any way to get this
> work without having a Thread.sleep(..).
>
> Thanks in advance.
>
> Regards,
> --Bhathiya
>
>
> [1]
> 05.08.2012 14:11:03.299 *INFO* [main] Setting sling.home=sling (default)
> 05.08.2012 14:11:03.301 *INFO* [main] Starting Sling in sling
> (/home/bhathiya/Apps/Sling/sling/testing/samples/integration-tests/sling)
> 05.08.2012 14:11:03.313 *INFO* [main] Checking launcher JAR in folder sling
> 05.08.2012 14:11:03.341 *INFO* [main] Existing launcher is up to date,
> using it: 2.3.0 (org.apache.sling.launchpad.base.jar)
> 05.08.2012 14:11:03.361 *INFO* [main] Loading launcher class
> org.apache.sling.launchpad.base.app.MainDelegate from
> org.apache.sling.launchpad.base.jar
> 05.08.2012 14:11:03.386 *INFO* [main] Starting launcher ...
> 05.08.2012 14:11:03.393 *INFO* [main] HTTP server port: 8080
> org.apache.http.conn.HttpHostConnectException: Connection to
> http://localhost:8080 refused
> at
>
> org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:158)
>  at
>
> org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:149)
> at
>
> org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:121)
>  at
>
> org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:562)
> at
>
> org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:415)
>  at
>
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
> at
>
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
>  at
>
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:732)
> at
>
> org.apache.sling.testing.tools.http.RequestExecutor.execute(RequestExecutor.java:131)
>  at
>
> org.apache.sling.testing.samples.integrationtests.http.OsgiConsoleTest.testSomeConsolePaths(OsgiConsoleTest.java:46)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>  at
>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>  at java.lang.reflect.Method.invoke(Method.java:597)
> at
>
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>  at
>
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> at
>
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>  at
>
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> at
>
> org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)
>  at
>
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)
> at
>
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)
>  at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>  at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>  at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>  at
>
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at
>
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>  at
>
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at
>
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
>  at
>
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at
>
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: java.net.ConnectException: Connection refused
> at java.net.PlainSocketImpl.socketConnect(Native Method)
> at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
>  at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
> at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
>  at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
> at java.net.Socket.connect(Socket.java:529)
>  at
>
> org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:120)
> at
>
> org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:148)
>  ... 32 more
>
> [2]
>
> public class OsgiConsoleTest extends SlingTestBase {
>  static{
> System.setProperty("jar.executor.server.port", "8080");
>  }
>
> @Test
> public void testSomeConsolePaths() {
>  try {
> final String[] subpaths = { "bundles", "components", "configMgr",
>  "config", "licenses", "logs", "memoryusage", "services",
> "shell" };
>
> for (String subpath : subpaths) {
> final String path = "/system/console/" + subpath;
>  RequestExecutor exec = getRequestExecutor();
> Request rb =
> getRequestBuilder().buildGetRequest(path).withCredentials("admin",
> "admin");
>  *Thread.sleep(5000);
>
>  
> //----------------------------------------------------------------------LINE_X
> *
> exec.execute(rb).assertStatus(200);
>  }
> } catch (Exception ex) {
> ex.printStackTrace();
>  }
> }
> }
>

Reply via email to