Add implementation from Assignment 1
This commit is contained in:
parent
2ae01910cd
commit
acfe3a0b12
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">0.008s</div>
|
||||
<div class="counter">1m6.01s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -76,116 +76,28 @@
|
||||
<a name="inbox_mulipleMails_showsAllInboxDataCorrectly"></a>
|
||||
<h3 class="failures">inbox_mulipleMails_showsAllInboxDataCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+2"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.client.MessageClientMailboxTest.setUp(MessageClientMailboxTest.java:59)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
<span class="code">
|
||||
<pre>java.lang.NullPointerException
|
||||
at dslab.client.MessageClientMailboxTest.tearDown(MessageClientMailboxTest.java:74)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
<pre>org.junit.runners.model.TestTimedOutException: test timed out after 40000 milliseconds
|
||||
at java.base@11.0.8/jdk.internal.misc.Unsafe.park(Native Method)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
|
||||
at java.base@11.0.8/java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:458)
|
||||
at app//dslab.StreamListener.poll(StreamListener.java:34)
|
||||
at app//dslab.JunitSocketClient.read(JunitSocketClient.java:82)
|
||||
at app//dslab.JunitSocketClient.sendAndRead(JunitSocketClient.java:108)
|
||||
at app//dslab.JunitSocketClient.sendAndVerify(JunitSocketClient.java:103)
|
||||
at app//dslab.client.MessageClientMailboxTest.inbox_mulipleMails_showsAllInboxDataCorrectly(MessageClientMailboxTest.java:121)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base@11.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base@11.0.8/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at app//org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at app//org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at app//org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at app//org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base@11.0.8/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base@11.0.8/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
@ -193,116 +105,28 @@
|
||||
<a name="inbox_singleMail_showsAllInboxDataCorrectly"></a>
|
||||
<h3 class="failures">inbox_singleMail_showsAllInboxDataCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+2"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.client.MessageClientMailboxTest.setUp(MessageClientMailboxTest.java:59)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
<span class="code">
|
||||
<pre>java.lang.NullPointerException
|
||||
at dslab.client.MessageClientMailboxTest.tearDown(MessageClientMailboxTest.java:74)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
<pre>org.junit.runners.model.TestTimedOutException: test timed out after 20000 milliseconds
|
||||
at java.base@11.0.8/jdk.internal.misc.Unsafe.park(Native Method)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
|
||||
at java.base@11.0.8/java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:458)
|
||||
at app//dslab.StreamListener.poll(StreamListener.java:34)
|
||||
at app//dslab.JunitSocketClient.read(JunitSocketClient.java:82)
|
||||
at app//dslab.JunitSocketClient.sendAndRead(JunitSocketClient.java:108)
|
||||
at app//dslab.JunitSocketClient.sendAndVerify(JunitSocketClient.java:103)
|
||||
at app//dslab.client.MessageClientMailboxTest.inbox_singleMail_showsAllInboxDataCorrectly(MessageClientMailboxTest.java:92)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base@11.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base@11.0.8/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at app//org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at app//org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at app//org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at app//org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base@11.0.8/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base@11.0.8/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
@ -319,12 +143,12 @@
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">inbox_mulipleMails_showsAllInboxDataCorrectly</td>
|
||||
<td class="failures">0.004s</td>
|
||||
<td class="failures">43.009s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">inbox_singleMail_showsAllInboxDataCorrectly</td>
|
||||
<td class="failures">0.004s</td>
|
||||
<td class="failures">23.005s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -332,14 +156,52 @@
|
||||
<div id="tab2" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
<pre>Dec 23, 2020 11:54:45 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Creating mailbox server
|
||||
Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
Dec 23, 2020 11:54:45 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@12a79257
|
||||
Dec 23, 2020 11:54:45 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Waiting for mailbox server sockets
|
||||
Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
Dec 23, 2020 11:54:45 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Starting message client
|
||||
Dec 23, 2020 11:54:45 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@29ceee08
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [trillian@earth.planet]
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): trillian@earth.planet
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain and user exists. Adding address to msg.To() field
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@27090541
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@7175fa12
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@29ceee08
|
||||
Dec 23, 2020 11:55:28 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Creating mailbox server
|
||||
Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@27090541
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@1a4b8391
|
||||
Dec 23, 2020 11:55:28 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Waiting for mailbox server sockets
|
||||
Dec 23, 2020 11:55:28 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Starting message client
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@47222a70
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [trillian@earth.planet]
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): trillian@earth.planet
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain and user exists. Adding address to msg.To() field
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@49e5dce4
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
@ -351,7 +213,7 @@ INFO: Waiting for mailbox server sockets
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">0.003s</div>
|
||||
<div class="counter">15.017s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -66,6 +66,9 @@
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab2">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
@ -73,116 +76,26 @@
|
||||
<a name="startClient_shouldConnectToMailboxServerAndSendStartsecure"></a>
|
||||
<h3 class="failures">startClient_shouldConnectToMailboxServerAndSendStartsecure</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.client.MessageClientStartupTest.setUp(MessageClientStartupTest.java:37)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
<span class="code">
|
||||
<pre>java.lang.NullPointerException
|
||||
at dslab.client.MessageClientStartupTest.tearDown(MessageClientStartupTest.java:48)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
<pre>org.junit.runners.model.TestTimedOutException: test timed out after 15000 milliseconds
|
||||
at java.base@11.0.8/jdk.internal.misc.Unsafe.park(Native Method)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:885)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1039)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1345)
|
||||
at java.base@11.0.8/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:232)
|
||||
at app//dslab.client.MessageClientStartupTest.startClient_shouldConnectToMailboxServerAndSendStartsecure(MessageClientStartupTest.java:78)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base@11.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base@11.0.8/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at app//org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at app//org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at app//org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at app//org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base@11.0.8/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base@11.0.8/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
@ -199,11 +112,29 @@
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">startClient_shouldConnectToMailboxServerAndSendStartsecure</td>
|
||||
<td class="failures">0.003s</td>
|
||||
<td class="failures">15.017s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab2" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Starting mock server on 11623
|
||||
Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Listening on client connection
|
||||
Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Processing client connection Socket[addr=/127.0.0.1,port=47618,localport=11623]
|
||||
Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Listening on client connection
|
||||
Dec 23, 2020 11:54:45 AM dslab.SimpleTcpServer close
|
||||
INFO: Closing server socket
|
||||
Dec 23, 2020 11:54:45 AM dslab.SimpleTcpServer close
|
||||
INFO: Closing server socket
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -212,7 +143,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">4</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">12.017s</div>
|
||||
<div class="counter">13.092s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -50,8 +50,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -61,124 +61,13 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
<a href="#tab0">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
<a href="#tab1">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<div class="test">
|
||||
<a name="acceptDmtpMessage_listDmapMessage"></a>
|
||||
<h3 class="failures">acceptDmtpMessage_listDmapMessage</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
<div class="test">
|
||||
<a name="dmtpMessage_withUnknownRecipient_returnsError"></a>
|
||||
<h3 class="failures">dmtpMessage_withUnknownRecipient_returnsError</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
<div class="test">
|
||||
<a name="loginAndLogout_withValidLogin"></a>
|
||||
<h3 class="failures">loginAndLogout_withValidLogin</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
<div class="test">
|
||||
<a name="login_withInvalidLogin_returnsError"></a>
|
||||
<h3 class="failures">login_withInvalidLogin_returnsError</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Tests</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@ -189,27 +78,121 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">acceptDmtpMessage_listDmapMessage</td>
|
||||
<td class="failures">3.002s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">acceptDmtpMessage_listDmapMessage</td>
|
||||
<td class="success">4.043s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">dmtpMessage_withUnknownRecipient_returnsError</td>
|
||||
<td class="failures">3.012s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">dmtpMessage_withUnknownRecipient_returnsError</td>
|
||||
<td class="success">3.017s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">loginAndLogout_withValidLogin</td>
|
||||
<td class="failures">3.002s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">loginAndLogout_withValidLogin</td>
|
||||
<td class="success">3.018s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">login_withInvalidLogin_returnsError</td>
|
||||
<td class="failures">3.001s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">login_withInvalidLogin_returnsError</td>
|
||||
<td class="success">3.014s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:54:14 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@241b95b7
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@1f3c1728
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [trillian@earth.planet]
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): trillian@earth.planet
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain and user exists. Adding address to msg.To() field
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection storeMessage
|
||||
INFO: Storing message from arthur@earth.planet
|
||||
to trillian@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection storeMessage
|
||||
INFO: storeMessage(): checking if msg 0 arthur@earth.planet hello already exists for recipient trillian@earth.planet
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@73c9d031
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMAPConnection loginLoop
|
||||
INFO: User successfully logged in: trillian@earth.planet
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6b871b90
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6540f948
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@1f3c1728
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6b871b90
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@73c9d031
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@65f3f723
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50d35cb5
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection loginLoop
|
||||
INFO: User successfully logged in: trillian@earth.planet
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@49562a5
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@4fc64790
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50d35cb5
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@49562a5
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@520788de
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@5873049e
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [unknown@earth.planet]
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): unknown@earth.planet
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address unknown@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Our userStorage in domain earth.planet does not contain user unknown
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@6b58be8b
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@5873049e
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@dc78beb
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@6b58be8b
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@5d7aadb9
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@340579b2
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6f10dd9e
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@340579b2
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@61d72fd4
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6f10dd9e
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -218,7 +201,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">1</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">0.003s</div>
|
||||
<div class="counter">3.007s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -50,8 +50,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -61,43 +61,13 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
<a href="#tab0">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
<a href="#tab1">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<div class="test">
|
||||
<a name="runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly"></a>
|
||||
<h3 class="failures">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+2"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerTest.runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly(MailboxServerTest.java:33)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Tests</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@ -108,12 +78,36 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</td>
|
||||
<td class="failures">0.003s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</td>
|
||||
<td class="success">3.007s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Starting thread with component dslab.mailbox.MailboxServer@d5e253e
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@d5e253e
|
||||
Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for DMTP socket to open on port 11622
|
||||
Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for DMAP socket to open on port 11623
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50c1e13d
|
||||
Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Shutting down component dslab.mailbox.MailboxServer@d5e253e
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@5f003336
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50c1e13d
|
||||
Dec 23, 2020 11:54:30 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for thread to stop for component dslab.mailbox.MailboxServer@d5e253e
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -122,7 +116,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">3.003s</div>
|
||||
<div class="counter">4.025s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -66,6 +66,9 @@
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab2">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
@ -73,12 +76,18 @@
|
||||
<a name="sendStartsecure"></a>
|
||||
<h3 class="failures">sendStartsecure</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxStartsecureTest.setUp(MailboxStartsecureTest.java:31)
|
||||
<pre>java.lang.AssertionError:
|
||||
Expected: a string containing "ok DMAP2.0"
|
||||
but: was "ok DMAP"
|
||||
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
|
||||
at org.junit.Assert.assertThat(Assert.java:956)
|
||||
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
|
||||
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:54)
|
||||
at dslab.JunitSocketClient.assertThat(JunitSocketClient.java:120)
|
||||
at dslab.JunitSocketClient.verify(JunitSocketClient.java:92)
|
||||
at dslab.mailbox.MailboxStartsecureTest.sendStartsecure(MailboxStartsecureTest.java:58)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -86,9 +95,58 @@
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
<span class="code">
|
||||
<pre>java.lang.AssertionError:
|
||||
Expected: a string containing "ok mailbox-earth-planet"
|
||||
but: was "error not logged in"
|
||||
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
|
||||
at org.junit.Assert.assertThat(Assert.java:956)
|
||||
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
|
||||
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:54)
|
||||
at dslab.JunitSocketClient.assertThat(JunitSocketClient.java:120)
|
||||
at dslab.JunitSocketClient.sendAndVerify(JunitSocketClient.java:103)
|
||||
at dslab.mailbox.MailboxStartsecureTest.sendStartsecure(MailboxStartsecureTest.java:61)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
<span class="code">
|
||||
<pre>java.lang.AssertionError: Expected server response to be Base64 encoded
|
||||
Expected: a string matching "^(?:[a-zA-Z0-9+/]{4})*(?:[a-zA-Z0-9+/]{2}==|[a-zA-Z0-9+/]{3}=)?$"
|
||||
but: was "error not logged in"
|
||||
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
|
||||
at org.junit.Assert.assertThat(Assert.java:956)
|
||||
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
|
||||
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
|
||||
at dslab.mailbox.MailboxStartsecureTest.sendStartsecure(MailboxStartsecureTest.java:68)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
@ -109,11 +167,29 @@
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">sendStartsecure</td>
|
||||
<td class="failures">3.003s</td>
|
||||
<td class="failures">4.025s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab2" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:54:10 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:10 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@3fe01346
|
||||
Dec 23, 2020 11:54:10 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@3df07a72
|
||||
Dec 23, 2020 11:54:11 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@3df07a72
|
||||
Dec 23, 2020 11:54:11 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@773ef65c
|
||||
Dec 23, 2020 11:54:11 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@139c58dc
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -122,7 +198,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">2</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">6.020s</div>
|
||||
<div class="counter">22.044s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -50,8 +50,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -61,70 +61,13 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
<a href="#tab0">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
<a href="#tab1">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<div class="test">
|
||||
<a name="addresses_returnsCorrectStatistics"></a>
|
||||
<h3 class="failures">addresses_returnsCorrectStatistics</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+8"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.monitoring.MonitoringServerProtocolTest.setUp(MonitoringServerProtocolTest.java:36)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
<div class="test">
|
||||
<a name="servers_returnsCorrectStatistics"></a>
|
||||
<h3 class="failures">servers_returnsCorrectStatistics</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+8"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.monitoring.MonitoringServerProtocolTest.setUp(MonitoringServerProtocolTest.java:36)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Tests</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@ -135,17 +78,55 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">addresses_returnsCorrectStatistics</td>
|
||||
<td class="failures">3.002s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">addresses_returnsCorrectStatistics</td>
|
||||
<td class="success">11.005s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">servers_returnsCorrectStatistics</td>
|
||||
<td class="failures">3.018s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">servers_returnsCorrectStatistics</td>
|
||||
<td class="success">11.039s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:52:57 AM dslab.monitoring.MonitoringServer run
|
||||
INFO: Creating UDP serverSocket for dslab.monitoring.MonitoringServer@2f62b3f5
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringServerProtocolTest servers_returnsCorrectStatistics
|
||||
INFO: Sending three monitoring packets to monitoring socket
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:43
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: bar@example.com
|
||||
Dec 23, 2020 11:53:08 AM dslab.monitoring.MonitoringServer run
|
||||
INFO: Creating UDP serverSocket for dslab.monitoring.MonitoringServer@1e2967a2
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringServerProtocolTest addresses_returnsCorrectStatistics
|
||||
INFO: Sending three monitoring packets to monitoring socket
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:43
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: bar@example.com
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -154,7 +135,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">1</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">0.002s</div>
|
||||
<div class="counter">6.017s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -50,8 +50,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -61,43 +61,13 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
<a href="#tab0">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
<a href="#tab1">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<div class="test">
|
||||
<a name="runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly"></a>
|
||||
<h3 class="failures">runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+8"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.monitoring.MonitoringServerTest.runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly(MonitoringServerTest.java:27)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Tests</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@ -108,12 +78,28 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly</td>
|
||||
<td class="failures">0.002s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly</td>
|
||||
<td class="success">6.017s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:53:19 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Starting thread with component dslab.monitoring.MonitoringServer@7baac9c6
|
||||
Dec 23, 2020 11:53:19 AM dslab.monitoring.MonitoringServer run
|
||||
INFO: Creating UDP serverSocket for dslab.monitoring.MonitoringServer@7baac9c6
|
||||
Dec 23, 2020 11:53:22 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Trying to create socket on port 11628
|
||||
Dec 23, 2020 11:53:22 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Shutting down component dslab.monitoring.MonitoringServer@7baac9c6
|
||||
Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Waiting for thread to stop for component dslab.monitoring.MonitoringServer@7baac9c6
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -122,7 +108,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">36.056s</div>
|
||||
<div class="counter">36.035s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -76,12 +76,8 @@
|
||||
<a name="ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly"></a>
|
||||
<h3 class="failures">ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly(NameserverTest.java:78)
|
||||
<pre>java.lang.AssertionError: Expected root nameserver to start a registry, but it couldn't be located or registry.list() failed
|
||||
at dslab.naming.NameserverTest.ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly(NameserverTest.java:81)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -94,6 +90,28 @@
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
Caused by: java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
|
||||
java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:209)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:196)
|
||||
at java.rmi/sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
|
||||
at java.rmi/sun.rmi.registry.RegistryImpl_Stub.list(RegistryImpl_Stub.java:90)
|
||||
at dslab.naming.NameserverTest.ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly(NameserverTest.java:79)
|
||||
... 12 more
|
||||
Caused by: java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
|
||||
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
|
||||
at java.base/java.net.Socket.connect(Socket.java:609)
|
||||
at java.base/java.net.Socket.connect(Socket.java:558)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:454)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:231)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPDirectSocketFactory.createSocket(TCPDirectSocketFactory.java:40)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:617)
|
||||
... 17 more
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
@ -101,12 +119,8 @@
|
||||
<a name="ns02_startRootNameserver_registersRemoteObjectCorrectly"></a>
|
||||
<h3 class="failures">ns02_startRootNameserver_registersRemoteObjectCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns02_startRootNameserver_registersRemoteObjectCorrectly(NameserverTest.java:109)
|
||||
<pre>java.lang.AssertionError: Error while looking up remote object
|
||||
at dslab.naming.NameserverTest.ns02_startRootNameserver_registersRemoteObjectCorrectly(NameserverTest.java:118)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -126,12 +140,14 @@
|
||||
<a name="ns03_startingZoneNameserver_registersNameserverCorrectly"></a>
|
||||
<h3 class="failures">ns03_startingZoneNameserver_registersNameserverCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns03_startingZoneNameserver_registersNameserverCorrectly(NameserverTest.java:141)
|
||||
<pre>java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
|
||||
java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:209)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:196)
|
||||
at java.rmi/sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
|
||||
at java.rmi/sun.rmi.registry.RegistryImpl_Stub.list(RegistryImpl_Stub.java:90)
|
||||
at dslab.naming.NameserverTest.ns03_startingZoneNameserver_registersNameserverCorrectly(NameserverTest.java:143)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -144,6 +160,19 @@
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
Caused by: java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
|
||||
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
|
||||
at java.base/java.net.Socket.connect(Socket.java:609)
|
||||
at java.base/java.net.Socket.connect(Socket.java:558)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:454)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:231)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPDirectSocketFactory.createSocket(TCPDirectSocketFactory.java:40)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:617)
|
||||
... 17 more
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
@ -151,12 +180,14 @@
|
||||
<a name="ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly"></a>
|
||||
<h3 class="failures">ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly(NameserverTest.java:185)
|
||||
<pre>java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
|
||||
java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:209)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:196)
|
||||
at java.rmi/sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
|
||||
at java.rmi/sun.rmi.registry.RegistryImpl_Stub.lookup(RegistryImpl_Stub.java:116)
|
||||
at dslab.naming.NameserverTest.ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly(NameserverTest.java:189)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -169,6 +200,19 @@
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
Caused by: java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
|
||||
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
|
||||
at java.base/java.net.Socket.connect(Socket.java:609)
|
||||
at java.base/java.net.Socket.connect(Socket.java:558)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:454)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:231)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPDirectSocketFactory.createSocket(TCPDirectSocketFactory.java:40)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:617)
|
||||
... 17 more
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
@ -185,22 +229,22 @@
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly</td>
|
||||
<td class="failures">6.038s</td>
|
||||
<td class="failures">6.016s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">ns02_startRootNameserver_registersRemoteObjectCorrectly</td>
|
||||
<td class="failures">6.005s</td>
|
||||
<td class="failures">6.006s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">ns03_startingZoneNameserver_registersNameserverCorrectly</td>
|
||||
<td class="failures">12.007s</td>
|
||||
<td class="failures">12.005s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly</td>
|
||||
<td class="failures">12.006s</td>
|
||||
<td class="failures">12.008s</td>
|
||||
<td class="failures">failed</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -208,29 +252,33 @@
|
||||
<div id="tab2" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Nov 26, 2020 10:41:23 AM dslab.naming.NameserverTest ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly
|
||||
<pre>Dec 23, 2020 11:53:34 AM dslab.naming.NameserverTest ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:26 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:37 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:29 AM dslab.naming.NameserverTest ns02_startRootNameserver_registersRemoteObjectCorrectly
|
||||
Dec 23, 2020 11:53:40 AM dslab.naming.NameserverTest ns02_startRootNameserver_registersRemoteObjectCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:32 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:43 AM dslab.naming.NameserverTest ns02_startRootNameserver_registersRemoteObjectCorrectly
|
||||
INFO: Looking up root-nameserver in registry
|
||||
Dec 23, 2020 11:53:43 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:35 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
Dec 23, 2020 11:53:46 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:38 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
Dec 23, 2020 11:53:49 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
INFO: Starting ns-planet thread
|
||||
Nov 26, 2020 10:41:41 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:52 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:44 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:55 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:47 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
Dec 23, 2020 11:53:58 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:50 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
Dec 23, 2020 11:54:01 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
INFO: Starting ns-planet thread
|
||||
Nov 26, 2020 10:41:53 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:54:04 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
INFO: Looking up root-nameserver in registry
|
||||
Dec 23, 2020 11:54:04 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:56 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:54:07 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
</pre>
|
||||
</span>
|
||||
@ -243,7 +291,7 @@ INFO: Sending shutdown to component component
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">2</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">6.005s</div>
|
||||
<div class="counter">6.037s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -50,8 +50,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -61,70 +61,13 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
<a href="#tab0">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
<a href="#tab1">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<div class="test">
|
||||
<a name="defaultDmtpInteractionTest"></a>
|
||||
<h3 class="failures">defaultDmtpInteractionTest</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.transfer.TransferServerProtocolTest.setUp(TransferServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
<div class="test">
|
||||
<a name="sendWithoutRecipient_returnsErrorOnSend"></a>
|
||||
<h3 class="failures">sendWithoutRecipient_returnsErrorOnSend</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.transfer.TransferServerProtocolTest.setUp(TransferServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Tests</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@ -135,17 +78,97 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">defaultDmtpInteractionTest</td>
|
||||
<td class="failures">3.004s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">defaultDmtpInteractionTest</td>
|
||||
<td class="success">3.015s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">sendWithoutRecipient_returnsErrorOnSend</td>
|
||||
<td class="failures">3.001s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">sendWithoutRecipient_returnsErrorOnSend</td>
|
||||
<td class="success">3.022s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer run
|
||||
INFO: Creating serverSocket for dslab.transfer.TransferServer@4f2780a4
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServerProtocolTest setUp
|
||||
INFO: Waiting for server socket to appear
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue currently empty. Waiting for messages to appear...
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@230cb815
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting subject to: hello
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting data to: hello from junit
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@13137acb
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@230cb815
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@13137acb
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer$Producer produce
|
||||
INFO: Added message from trillian@earth.planet
|
||||
to arthur@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
to queue
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer$Consumer run
|
||||
INFO: Consumer thread has been interrupted. Exiting...Thread[Thread-12,5,FailOnTimeoutGroup]
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServerProtocolTest setUp
|
||||
INFO: Waiting for server socket to appear
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer run
|
||||
INFO: Creating serverSocket for dslab.transfer.TransferServer@7f9374ad
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue not empty. Processing message...
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Took message from trillian@earth.planet
|
||||
to arthur@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
from queue
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: msg.getTo() contains: [arthur@earth.planet]
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Trying to send message to arthur@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer domainLookup
|
||||
INFO: Performing domain lookup for address arthur@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Domain lookup successful. Port is: 11622
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer replayMessage
|
||||
INFO: Replaying message for message: from trillian@earth.planet
|
||||
to arthur@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
on port 11622
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer sendErrorMail
|
||||
INFO: Trying to send error mail to address trillian@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer domainLookup
|
||||
INFO: Performing domain lookup for address trillian@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer sendErrorMail
|
||||
SEVERE: Sending error mail failed because socket communication failed
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue currently empty. Waiting for messages to appear...
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@395b40fd
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting subject to: hello
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting data to: hello from junit
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@69536688
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer run
|
||||
INFO: Consumer thread has been interrupted. Exiting...Thread[Thread-18,5,FailOnTimeoutGroup]
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@395b40fd
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@69536688
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -154,7 +177,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">1</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -41,7 +41,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">0s</div>
|
||||
<div class="counter">3.046s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -50,8 +50,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -61,43 +61,13 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
<a href="#tab0">Tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Tests</a>
|
||||
<a href="#tab1">Standard error</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<div class="test">
|
||||
<a name="runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly"></a>
|
||||
<h3 class="failures">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</h3>
|
||||
<span class="code">
|
||||
<pre>java.lang.NumberFormatException: For input string: "port_range"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.transfer.TransferServerTest.runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly(TransferServerTest.java:30)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Tests</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@ -108,12 +78,36 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tr>
|
||||
<td class="failures">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</td>
|
||||
<td class="failures">0s</td>
|
||||
<td class="failures">failed</td>
|
||||
<td class="success">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</td>
|
||||
<td class="success">3.046s</td>
|
||||
<td class="success">passed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Standard error</h2>
|
||||
<span class="code">
|
||||
<pre>Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Starting thread with component dslab.transfer.TransferServer@986eb44
|
||||
Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for socket to open on port 11620
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.TransferServer run
|
||||
INFO: Creating serverSocket for dslab.transfer.TransferServer@986eb44
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue currently empty. Waiting for messages to appear...
|
||||
Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Shutting down component dslab.transfer.TransferServer@986eb44
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@47f8f420
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.TransferServer$Consumer run
|
||||
INFO: Consumer thread has been interrupted. Exiting...Thread[Thread-9,5,FailOnTimeoutGroup]
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@47f8f420
|
||||
Dec 23, 2020 11:53:28 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for thread to stop for component dslab.transfer.TransferServer@986eb44
|
||||
</pre>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
@ -122,7 +116,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -26,7 +26,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">19</div>
|
||||
<div class="counter">8</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -38,7 +38,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">1m3.12s</div>
|
||||
<div class="counter">2m54.33s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -48,7 +48,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="percent">57%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -83,42 +83,10 @@
|
||||
<a href="classes/dslab.client.MessageClientStartupTest.html#startClient_shouldConnectToMailboxServerAndSendStartsecure">startClient_shouldConnectToMailboxServerAndSendStartsecure</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html#acceptDmtpMessage_listDmapMessage">acceptDmtpMessage_listDmapMessage</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html#dmtpMessage_withUnknownRecipient_returnsError">dmtpMessage_withUnknownRecipient_returnsError</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html#loginAndLogout_withValidLogin">loginAndLogout_withValidLogin</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html#login_withInvalidLogin_returnsError">login_withInvalidLogin_returnsError</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.mailbox.MailboxServerTest.html">MailboxServerTest</a>.
|
||||
<a href="classes/dslab.mailbox.MailboxServerTest.html#runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.mailbox.MailboxStartsecureTest.html">MailboxStartsecureTest</a>.
|
||||
<a href="classes/dslab.mailbox.MailboxStartsecureTest.html#sendStartsecure">sendStartsecure</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.monitoring.MonitoringServerProtocolTest.html">MonitoringServerProtocolTest</a>.
|
||||
<a href="classes/dslab.monitoring.MonitoringServerProtocolTest.html#addresses_returnsCorrectStatistics">addresses_returnsCorrectStatistics</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.monitoring.MonitoringServerProtocolTest.html">MonitoringServerProtocolTest</a>.
|
||||
<a href="classes/dslab.monitoring.MonitoringServerProtocolTest.html#servers_returnsCorrectStatistics">servers_returnsCorrectStatistics</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.monitoring.MonitoringServerTest.html">MonitoringServerTest</a>.
|
||||
<a href="classes/dslab.monitoring.MonitoringServerTest.html#runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly">runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.naming.NameserverTest.html">NameserverTest</a>.
|
||||
<a href="classes/dslab.naming.NameserverTest.html#ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly">ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly</a>
|
||||
</li>
|
||||
@ -134,18 +102,6 @@
|
||||
<a href="classes/dslab.naming.NameserverTest.html">NameserverTest</a>.
|
||||
<a href="classes/dslab.naming.NameserverTest.html#ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly">ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.transfer.TransferServerProtocolTest.html">TransferServerProtocolTest</a>.
|
||||
<a href="classes/dslab.transfer.TransferServerProtocolTest.html#defaultDmtpInteractionTest">defaultDmtpInteractionTest</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.transfer.TransferServerProtocolTest.html">TransferServerProtocolTest</a>.
|
||||
<a href="classes/dslab.transfer.TransferServerProtocolTest.html#sendWithoutRecipient_returnsErrorOnSend">sendWithoutRecipient_returnsErrorOnSend</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="classes/dslab.transfer.TransferServerTest.html">TransferServerTest</a>.
|
||||
<a href="classes/dslab.transfer.TransferServerTest.html#runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
@ -169,7 +125,7 @@
|
||||
<td>3</td>
|
||||
<td>3</td>
|
||||
<td>0</td>
|
||||
<td>0.011s</td>
|
||||
<td>1m21.03s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -177,20 +133,20 @@
|
||||
<a href="packages/dslab.mailbox.html">dslab.mailbox</a>
|
||||
</td>
|
||||
<td>6</td>
|
||||
<td>6</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>15.023s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>20.124s</td>
|
||||
<td class="failures">83%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="packages/dslab.monitoring.html">dslab.monitoring</a>
|
||||
</td>
|
||||
<td>3</td>
|
||||
<td>3</td>
|
||||
<td>0</td>
|
||||
<td>6.022s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>28.061s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
@ -199,18 +155,18 @@
|
||||
<td>4</td>
|
||||
<td>4</td>
|
||||
<td>0</td>
|
||||
<td>36.056s</td>
|
||||
<td>36.035s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="packages/dslab.transfer.html">dslab.transfer</a>
|
||||
</td>
|
||||
<td>3</td>
|
||||
<td>3</td>
|
||||
<td>0</td>
|
||||
<td>6.005s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>9.083s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@ -236,7 +192,7 @@
|
||||
<td>2</td>
|
||||
<td>2</td>
|
||||
<td>0</td>
|
||||
<td>0.008s</td>
|
||||
<td>1m6.01s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -246,28 +202,28 @@
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0.003s</td>
|
||||
<td>15.017s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="classes/dslab.mailbox.MailboxServerProtocolTest.html">dslab.mailbox.MailboxServerProtocolTest</a>
|
||||
</td>
|
||||
<td>4</td>
|
||||
<td>4</td>
|
||||
<td>0</td>
|
||||
<td>12.017s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>13.092s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="classes/dslab.mailbox.MailboxServerTest.html">dslab.mailbox.MailboxServerTest</a>
|
||||
</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0.003s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>3.007s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
@ -276,28 +232,28 @@
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>3.003s</td>
|
||||
<td>4.025s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="classes/dslab.monitoring.MonitoringServerProtocolTest.html">dslab.monitoring.MonitoringServerProtocolTest</a>
|
||||
</td>
|
||||
<td>2</td>
|
||||
<td>2</td>
|
||||
<td>0</td>
|
||||
<td>6.020s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>22.044s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="classes/dslab.monitoring.MonitoringServerTest.html">dslab.monitoring.MonitoringServerTest</a>
|
||||
</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0.002s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>6.017s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
@ -306,28 +262,28 @@
|
||||
<td>4</td>
|
||||
<td>4</td>
|
||||
<td>0</td>
|
||||
<td>36.056s</td>
|
||||
<td>36.035s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="classes/dslab.transfer.TransferServerProtocolTest.html">dslab.transfer.TransferServerProtocolTest</a>
|
||||
</td>
|
||||
<td>2</td>
|
||||
<td>2</td>
|
||||
<td>0</td>
|
||||
<td>6.005s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>6.037s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="classes/dslab.transfer.TransferServerTest.html">dslab.transfer.TransferServerTest</a>
|
||||
</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>3.046s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@ -340,7 +296,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -40,7 +40,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">0.011s</div>
|
||||
<div class="counter">1m21.03s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -103,7 +103,7 @@
|
||||
<td>2</td>
|
||||
<td>2</td>
|
||||
<td>0</td>
|
||||
<td>0.008s</td>
|
||||
<td>1m6.01s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -113,7 +113,7 @@
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0.003s</td>
|
||||
<td>15.017s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -126,7 +126,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">6</div>
|
||||
<div class="counter">1</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -40,7 +40,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">15.023s</div>
|
||||
<div class="counter">20.124s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -50,7 +50,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="percent">83%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -70,26 +70,6 @@
|
||||
<h2>Failed tests</h2>
|
||||
<ul class="linkList">
|
||||
<li>
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html#acceptDmtpMessage_listDmapMessage">acceptDmtpMessage_listDmapMessage</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html#dmtpMessage_withUnknownRecipient_returnsError">dmtpMessage_withUnknownRecipient_returnsError</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html#loginAndLogout_withValidLogin">loginAndLogout_withValidLogin</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html#login_withInvalidLogin_returnsError">login_withInvalidLogin_returnsError</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.mailbox.MailboxServerTest.html">MailboxServerTest</a>.
|
||||
<a href="../classes/dslab.mailbox.MailboxServerTest.html#runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.mailbox.MailboxStartsecureTest.html">MailboxStartsecureTest</a>.
|
||||
<a href="../classes/dslab.mailbox.MailboxStartsecureTest.html#sendStartsecure">sendStartsecure</a>
|
||||
</li>
|
||||
@ -109,24 +89,24 @@
|
||||
</tr>
|
||||
</thread>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="../classes/dslab.mailbox.MailboxServerProtocolTest.html">MailboxServerProtocolTest</a>
|
||||
</td>
|
||||
<td>4</td>
|
||||
<td>4</td>
|
||||
<td>0</td>
|
||||
<td>12.017s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>13.092s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="../classes/dslab.mailbox.MailboxServerTest.html">MailboxServerTest</a>
|
||||
</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0.003s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>3.007s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
@ -135,7 +115,7 @@
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>3.003s</td>
|
||||
<td>4.025s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -148,7 +128,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">3</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -40,7 +40,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">6.022s</div>
|
||||
<div class="counter">28.061s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -49,8 +49,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -60,30 +60,10 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Classes</a>
|
||||
<a href="#tab0">Classes</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<ul class="linkList">
|
||||
<li>
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerProtocolTest.html">MonitoringServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerProtocolTest.html#addresses_returnsCorrectStatistics">addresses_returnsCorrectStatistics</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerProtocolTest.html">MonitoringServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerProtocolTest.html#servers_returnsCorrectStatistics">servers_returnsCorrectStatistics</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerTest.html">MonitoringServerTest</a>.
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerTest.html#runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly">runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Classes</h2>
|
||||
<table>
|
||||
<thread>
|
||||
@ -97,24 +77,24 @@
|
||||
</tr>
|
||||
</thread>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerProtocolTest.html">MonitoringServerProtocolTest</a>
|
||||
</td>
|
||||
<td>2</td>
|
||||
<td>2</td>
|
||||
<td>0</td>
|
||||
<td>6.020s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>22.044s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="../classes/dslab.monitoring.MonitoringServerTest.html">MonitoringServerTest</a>
|
||||
</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0.002s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>6.017s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@ -126,7 +106,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -40,7 +40,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">36.056s</div>
|
||||
<div class="counter">36.035s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -107,7 +107,7 @@
|
||||
<td>4</td>
|
||||
<td>4</td>
|
||||
<td>0</td>
|
||||
<td>36.056s</td>
|
||||
<td>36.035s</td>
|
||||
<td class="failures">0%</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -120,7 +120,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="failures">
|
||||
<div class="counter">3</div>
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -40,7 +40,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox" id="duration">
|
||||
<div class="counter">6.005s</div>
|
||||
<div class="counter">9.083s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -49,8 +49,8 @@
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox failures" id="successRate">
|
||||
<div class="percent">0%</div>
|
||||
<div class="infoBox success" id="successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
@ -60,30 +60,10 @@
|
||||
<div id="tabs">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a href="#tab0">Failed tests</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#tab1">Classes</a>
|
||||
<a href="#tab0">Classes</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div id="tab0" class="tab">
|
||||
<h2>Failed tests</h2>
|
||||
<ul class="linkList">
|
||||
<li>
|
||||
<a href="../classes/dslab.transfer.TransferServerProtocolTest.html">TransferServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.transfer.TransferServerProtocolTest.html#defaultDmtpInteractionTest">defaultDmtpInteractionTest</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.transfer.TransferServerProtocolTest.html">TransferServerProtocolTest</a>.
|
||||
<a href="../classes/dslab.transfer.TransferServerProtocolTest.html#sendWithoutRecipient_returnsErrorOnSend">sendWithoutRecipient_returnsErrorOnSend</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../classes/dslab.transfer.TransferServerTest.html">TransferServerTest</a>.
|
||||
<a href="../classes/dslab.transfer.TransferServerTest.html#runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly">runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="tab1" class="tab">
|
||||
<h2>Classes</h2>
|
||||
<table>
|
||||
<thread>
|
||||
@ -97,24 +77,24 @@
|
||||
</tr>
|
||||
</thread>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="../classes/dslab.transfer.TransferServerProtocolTest.html">TransferServerProtocolTest</a>
|
||||
</td>
|
||||
<td>2</td>
|
||||
<td>2</td>
|
||||
<td>0</td>
|
||||
<td>6.005s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>6.037s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="failures">
|
||||
<td class="success">
|
||||
<a href="../classes/dslab.transfer.TransferServerTest.html">TransferServerTest</a>
|
||||
</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td>0s</td>
|
||||
<td class="failures">0%</td>
|
||||
<td>0</td>
|
||||
<td>3.046s</td>
|
||||
<td class="success">100%</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@ -126,7 +106,7 @@
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Nov 26, 2020, 10:42:20 AM</p>
|
||||
<a href="http://www.gradle.org">Gradle 6.6.1</a> at Dec 23, 2020, 11:55:51 AM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@ -1,236 +1,102 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.client.MessageClientMailboxTest" tests="2" skipped="0" failures="2" errors="0" timestamp="2020-11-26T09:42:20" hostname="clemens-desktop" time="0.008">
|
||||
<testsuite name="dslab.client.MessageClientMailboxTest" tests="2" skipped="0" failures="2" errors="0" timestamp="2020-12-23T10:54:45" hostname="skynet" time="66.014">
|
||||
<properties/>
|
||||
<testcase name="inbox_mulipleMails_showsAllInboxDataCorrectly" classname="dslab.client.MessageClientMailboxTest" time="0.004">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+2"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+2"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.client.MessageClientMailboxTest.setUp(MessageClientMailboxTest.java:59)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
<failure message="java.lang.NullPointerException" type="java.lang.NullPointerException">java.lang.NullPointerException
|
||||
at dslab.client.MessageClientMailboxTest.tearDown(MessageClientMailboxTest.java:74)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
<testcase name="inbox_mulipleMails_showsAllInboxDataCorrectly" classname="dslab.client.MessageClientMailboxTest" time="43.009">
|
||||
<failure message="org.junit.runners.model.TestTimedOutException: test timed out after 40000 milliseconds" type="org.junit.runners.model.TestTimedOutException">org.junit.runners.model.TestTimedOutException: test timed out after 40000 milliseconds
|
||||
at java.base@11.0.8/jdk.internal.misc.Unsafe.park(Native Method)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
|
||||
at java.base@11.0.8/java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:458)
|
||||
at app//dslab.StreamListener.poll(StreamListener.java:34)
|
||||
at app//dslab.JunitSocketClient.read(JunitSocketClient.java:82)
|
||||
at app//dslab.JunitSocketClient.sendAndRead(JunitSocketClient.java:108)
|
||||
at app//dslab.JunitSocketClient.sendAndVerify(JunitSocketClient.java:103)
|
||||
at app//dslab.client.MessageClientMailboxTest.inbox_mulipleMails_showsAllInboxDataCorrectly(MessageClientMailboxTest.java:121)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base@11.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base@11.0.8/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at app//org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at app//org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at app//org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at app//org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base@11.0.8/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base@11.0.8/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="inbox_singleMail_showsAllInboxDataCorrectly" classname="dslab.client.MessageClientMailboxTest" time="0.004">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+2"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+2"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.client.MessageClientMailboxTest.setUp(MessageClientMailboxTest.java:59)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
<failure message="java.lang.NullPointerException" type="java.lang.NullPointerException">java.lang.NullPointerException
|
||||
at dslab.client.MessageClientMailboxTest.tearDown(MessageClientMailboxTest.java:74)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
<testcase name="inbox_singleMail_showsAllInboxDataCorrectly" classname="dslab.client.MessageClientMailboxTest" time="23.005">
|
||||
<failure message="org.junit.runners.model.TestTimedOutException: test timed out after 20000 milliseconds" type="org.junit.runners.model.TestTimedOutException">org.junit.runners.model.TestTimedOutException: test timed out after 20000 milliseconds
|
||||
at java.base@11.0.8/jdk.internal.misc.Unsafe.park(Native Method)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
|
||||
at java.base@11.0.8/java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:458)
|
||||
at app//dslab.StreamListener.poll(StreamListener.java:34)
|
||||
at app//dslab.JunitSocketClient.read(JunitSocketClient.java:82)
|
||||
at app//dslab.JunitSocketClient.sendAndRead(JunitSocketClient.java:108)
|
||||
at app//dslab.JunitSocketClient.sendAndVerify(JunitSocketClient.java:103)
|
||||
at app//dslab.client.MessageClientMailboxTest.inbox_singleMail_showsAllInboxDataCorrectly(MessageClientMailboxTest.java:92)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base@11.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base@11.0.8/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at app//org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at app//org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at app//org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at app//org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base@11.0.8/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base@11.0.8/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
<system-err><![CDATA[Dec 23, 2020 11:54:45 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Creating mailbox server
|
||||
Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
Dec 23, 2020 11:54:45 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@12a79257
|
||||
Dec 23, 2020 11:54:45 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Waiting for mailbox server sockets
|
||||
Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
Dec 23, 2020 11:54:45 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Starting message client
|
||||
Dec 23, 2020 11:54:45 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@29ceee08
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [trillian@earth.planet]
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): trillian@earth.planet
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain and user exists. Adding address to msg.To() field
|
||||
Dec 23, 2020 11:54:48 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@27090541
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@7175fa12
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@29ceee08
|
||||
Dec 23, 2020 11:55:28 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Creating mailbox server
|
||||
Nov 26, 2020 10:42:20 AM dslab.client.MessageClientMailboxTest setUp
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@27090541
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@1a4b8391
|
||||
Dec 23, 2020 11:55:28 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Waiting for mailbox server sockets
|
||||
Dec 23, 2020 11:55:28 AM dslab.client.MessageClientMailboxTest setUp
|
||||
INFO: Starting message client
|
||||
Dec 23, 2020 11:55:28 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@47222a70
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [trillian@earth.planet]
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): trillian@earth.planet
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain and user exists. Adding address to msg.To() field
|
||||
Dec 23, 2020 11:55:31 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@49e5dce4
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,117 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.client.MessageClientStartupTest" tests="1" skipped="0" failures="1" errors="0" timestamp="2020-11-26T09:42:20" hostname="clemens-desktop" time="0.003">
|
||||
<testsuite name="dslab.client.MessageClientStartupTest" tests="1" skipped="0" failures="1" errors="0" timestamp="2020-12-23T10:54:30" hostname="skynet" time="15.017">
|
||||
<properties/>
|
||||
<testcase name="startClient_shouldConnectToMailboxServerAndSendStartsecure" classname="dslab.client.MessageClientStartupTest" time="0.003">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+3"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.client.MessageClientStartupTest.setUp(MessageClientStartupTest.java:37)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
<failure message="java.lang.NullPointerException" type="java.lang.NullPointerException">java.lang.NullPointerException
|
||||
at dslab.client.MessageClientStartupTest.tearDown(MessageClientStartupTest.java:48)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
|
||||
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
|
||||
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
|
||||
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
|
||||
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
|
||||
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
|
||||
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
|
||||
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
|
||||
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
|
||||
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
|
||||
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
|
||||
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
|
||||
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
|
||||
at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
|
||||
at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:119)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
|
||||
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
|
||||
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
|
||||
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
|
||||
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
<testcase name="startClient_shouldConnectToMailboxServerAndSendStartsecure" classname="dslab.client.MessageClientStartupTest" time="15.017">
|
||||
<failure message="org.junit.runners.model.TestTimedOutException: test timed out after 15000 milliseconds" type="org.junit.runners.model.TestTimedOutException">org.junit.runners.model.TestTimedOutException: test timed out after 15000 milliseconds
|
||||
at java.base@11.0.8/jdk.internal.misc.Unsafe.park(Native Method)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:885)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1039)
|
||||
at java.base@11.0.8/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1345)
|
||||
at java.base@11.0.8/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:232)
|
||||
at app//dslab.client.MessageClientStartupTest.startClient_shouldConnectToMailboxServerAndSendStartsecure(MessageClientStartupTest.java:78)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base@11.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base@11.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base@11.0.8/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at app//org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at app//org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at app//org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at app//org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at app//org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base@11.0.8/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base@11.0.8/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Starting mock server on 11623
|
||||
Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Listening on client connection
|
||||
Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Processing client connection Socket[addr=/127.0.0.1,port=47618,localport=11623]
|
||||
Dec 23, 2020 11:54:30 AM dslab.SimpleTcpServer run
|
||||
INFO: Listening on client connection
|
||||
Dec 23, 2020 11:54:45 AM dslab.SimpleTcpServer close
|
||||
INFO: Closing server socket
|
||||
Dec 23, 2020 11:54:45 AM dslab.SimpleTcpServer close
|
||||
INFO: Closing server socket
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,98 +1,98 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.mailbox.MailboxServerProtocolTest" tests="4" skipped="0" failures="4" errors="0" timestamp="2020-11-26T09:42:05" hostname="clemens-desktop" time="12.017">
|
||||
<testsuite name="dslab.mailbox.MailboxServerProtocolTest" tests="4" skipped="0" failures="0" errors="0" timestamp="2020-12-23T10:54:14" hostname="skynet" time="13.092">
|
||||
<properties/>
|
||||
<testcase name="acceptDmtpMessage_listDmapMessage" classname="dslab.mailbox.MailboxServerProtocolTest" time="3.002">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+3"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="loginAndLogout_withValidLogin" classname="dslab.mailbox.MailboxServerProtocolTest" time="3.002">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+3"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="dmtpMessage_withUnknownRecipient_returnsError" classname="dslab.mailbox.MailboxServerProtocolTest" time="3.012">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+3"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="login_withInvalidLogin_returnsError" classname="dslab.mailbox.MailboxServerProtocolTest" time="3.001">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+3"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerProtocolTest.setUp(MailboxServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="acceptDmtpMessage_listDmapMessage" classname="dslab.mailbox.MailboxServerProtocolTest" time="4.043"/>
|
||||
<testcase name="loginAndLogout_withValidLogin" classname="dslab.mailbox.MailboxServerProtocolTest" time="3.018"/>
|
||||
<testcase name="dmtpMessage_withUnknownRecipient_returnsError" classname="dslab.mailbox.MailboxServerProtocolTest" time="3.017"/>
|
||||
<testcase name="login_withInvalidLogin_returnsError" classname="dslab.mailbox.MailboxServerProtocolTest" time="3.014"/>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:54:14 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@241b95b7
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@1f3c1728
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [trillian@earth.planet]
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): trillian@earth.planet
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address trillian@earth.planet belongs to this domain and user exists. Adding address to msg.To() field
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection storeMessage
|
||||
INFO: Storing message from arthur@earth.planet
|
||||
to trillian@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection storeMessage
|
||||
INFO: storeMessage(): checking if msg 0 arthur@earth.planet hello already exists for recipient trillian@earth.planet
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@73c9d031
|
||||
Dec 23, 2020 11:54:14 AM dslab.mailbox.DMAPConnection loginLoop
|
||||
INFO: User successfully logged in: trillian@earth.planet
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6b871b90
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6540f948
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@1f3c1728
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6b871b90
|
||||
Dec 23, 2020 11:54:15 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@73c9d031
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@65f3f723
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50d35cb5
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection loginLoop
|
||||
INFO: User successfully logged in: trillian@earth.planet
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@49562a5
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@4fc64790
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50d35cb5
|
||||
Dec 23, 2020 11:54:18 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@49562a5
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@520788de
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@5873049e
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Split EMail addresses: [unknown@earth.planet]
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Current email address in msg.getTo(): unknown@earth.planet
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Address unknown@earth.planet belongs to this domain earth.planet
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection run
|
||||
INFO: Our userStorage in domain earth.planet does not contain user unknown
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@6b58be8b
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@5873049e
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@dc78beb
|
||||
Dec 23, 2020 11:54:21 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@6b58be8b
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@5d7aadb9
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@340579b2
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6f10dd9e
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@340579b2
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@61d72fd4
|
||||
Dec 23, 2020 11:54:24 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@6f10dd9e
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,29 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.mailbox.MailboxServerTest" tests="1" skipped="0" failures="1" errors="0" timestamp="2020-11-26T09:42:05" hostname="clemens-desktop" time="0.003">
|
||||
<testsuite name="dslab.mailbox.MailboxServerTest" tests="1" skipped="0" failures="0" errors="0" timestamp="2020-12-23T10:54:27" hostname="skynet" time="3.007">
|
||||
<properties/>
|
||||
<testcase name="runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly" classname="dslab.mailbox.MailboxServerTest" time="0.003">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+2"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+2"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxServerTest.runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly(MailboxServerTest.java:33)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly" classname="dslab.mailbox.MailboxServerTest" time="3.007"/>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Starting thread with component dslab.mailbox.MailboxServer@d5e253e
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@d5e253e
|
||||
Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for DMTP socket to open on port 11622
|
||||
Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for DMAP socket to open on port 11623
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50c1e13d
|
||||
Dec 23, 2020 11:54:27 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Shutting down component dslab.mailbox.MailboxServer@d5e253e
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@5f003336
|
||||
Dec 23, 2020 11:54:27 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@50c1e13d
|
||||
Dec 23, 2020 11:54:30 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for thread to stop for component dslab.mailbox.MailboxServer@d5e253e
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,13 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.mailbox.MailboxStartsecureTest" tests="1" skipped="0" failures="1" errors="0" timestamp="2020-11-26T09:42:17" hostname="clemens-desktop" time="3.003">
|
||||
<testsuite name="dslab.mailbox.MailboxStartsecureTest" tests="1" skipped="0" failures="1" errors="0" timestamp="2020-12-23T10:54:10" hostname="skynet" time="4.025">
|
||||
<properties/>
|
||||
<testcase name="sendStartsecure" classname="dslab.mailbox.MailboxStartsecureTest" time="3.003">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+3"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+3"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.mailbox.MailboxStartsecureTest.setUp(MailboxStartsecureTest.java:31)
|
||||
<testcase name="sendStartsecure" classname="dslab.mailbox.MailboxStartsecureTest" time="4.025">
|
||||
<failure message="java.lang.AssertionError: Expected: a string containing "ok DMAP2.0" but: was "ok DMAP"" type="java.lang.AssertionError">java.lang.AssertionError:
|
||||
Expected: a string containing "ok DMAP2.0"
|
||||
but: was "ok DMAP"
|
||||
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
|
||||
at org.junit.Assert.assertThat(Assert.java:956)
|
||||
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
|
||||
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:54)
|
||||
at dslab.JunitSocketClient.assertThat(JunitSocketClient.java:120)
|
||||
at dslab.JunitSocketClient.verify(JunitSocketClient.java:92)
|
||||
at dslab.mailbox.MailboxStartsecureTest.sendStartsecure(MailboxStartsecureTest.java:58)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -15,9 +21,54 @@
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
<failure message="java.lang.AssertionError: Expected: a string containing "ok mailbox-earth-planet" but: was "error not logged in"" type="java.lang.AssertionError">java.lang.AssertionError:
|
||||
Expected: a string containing "ok mailbox-earth-planet"
|
||||
but: was "error not logged in"
|
||||
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
|
||||
at org.junit.Assert.assertThat(Assert.java:956)
|
||||
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
|
||||
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:54)
|
||||
at dslab.JunitSocketClient.assertThat(JunitSocketClient.java:120)
|
||||
at dslab.JunitSocketClient.sendAndVerify(JunitSocketClient.java:103)
|
||||
at dslab.mailbox.MailboxStartsecureTest.sendStartsecure(MailboxStartsecureTest.java:61)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
<failure message="java.lang.AssertionError: Expected server response to be Base64 encoded Expected: a string matching "^(?:[a-zA-Z0-9+/]{4})*(?:[a-zA-Z0-9+/]{2}==|[a-zA-Z0-9+/]{3}=)?$" but: was "error not logged in"" type="java.lang.AssertionError">java.lang.AssertionError: Expected server response to be Base64 encoded
|
||||
Expected: a string matching "^(?:[a-zA-Z0-9+/]{4})*(?:[a-zA-Z0-9+/]{2}==|[a-zA-Z0-9+/]{3}=)?$"
|
||||
but: was "error not logged in"
|
||||
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
|
||||
at org.junit.Assert.assertThat(Assert.java:956)
|
||||
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
|
||||
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
|
||||
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
|
||||
at dslab.mailbox.MailboxStartsecureTest.sendStartsecure(MailboxStartsecureTest.java:68)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
@ -25,5 +76,17 @@
|
||||
</failure>
|
||||
</testcase>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:54:10 AM dslab.mailbox.MailboxServerProtocolTest setUp
|
||||
INFO: Waiting for server sockets to appear
|
||||
Dec 23, 2020 11:54:10 AM dslab.mailbox.MailboxServer run
|
||||
INFO: Creating DMTP and DMAP serverSockets for MailboxServer + dslab.mailbox.MailboxServer@3fe01346
|
||||
Dec 23, 2020 11:54:10 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@3df07a72
|
||||
Dec 23, 2020 11:54:11 AM dslab.mailbox.DMTPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMTPConnection@3df07a72
|
||||
Dec 23, 2020 11:54:11 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@773ef65c
|
||||
Dec 23, 2020 11:54:11 AM dslab.mailbox.DMAPConnection shutdown
|
||||
INFO: Shutting down client connection dslab.mailbox.DMAPConnection@139c58dc
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,52 +1,40 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.monitoring.MonitoringServerProtocolTest" tests="2" skipped="0" failures="2" errors="0" timestamp="2020-11-26T09:41:17" hostname="clemens-desktop" time="6.02">
|
||||
<testsuite name="dslab.monitoring.MonitoringServerProtocolTest" tests="2" skipped="0" failures="0" errors="0" timestamp="2020-12-23T10:52:57" hostname="skynet" time="22.044">
|
||||
<properties/>
|
||||
<testcase name="servers_returnsCorrectStatistics" classname="dslab.monitoring.MonitoringServerProtocolTest" time="3.018">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+8"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+8"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.monitoring.MonitoringServerProtocolTest.setUp(MonitoringServerProtocolTest.java:36)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="addresses_returnsCorrectStatistics" classname="dslab.monitoring.MonitoringServerProtocolTest" time="3.002">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+8"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+8"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.monitoring.MonitoringServerProtocolTest.setUp(MonitoringServerProtocolTest.java:36)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="servers_returnsCorrectStatistics" classname="dslab.monitoring.MonitoringServerProtocolTest" time="11.039"/>
|
||||
<testcase name="addresses_returnsCorrectStatistics" classname="dslab.monitoring.MonitoringServerProtocolTest" time="11.005"/>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:52:57 AM dslab.monitoring.MonitoringServer run
|
||||
INFO: Creating UDP serverSocket for dslab.monitoring.MonitoringServer@2f62b3f5
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringServerProtocolTest servers_returnsCorrectStatistics
|
||||
INFO: Sending three monitoring packets to monitoring socket
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:43
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:00 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: bar@example.com
|
||||
Dec 23, 2020 11:53:08 AM dslab.monitoring.MonitoringServer run
|
||||
INFO: Creating UDP serverSocket for dslab.monitoring.MonitoringServer@1e2967a2
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringServerProtocolTest addresses_returnsCorrectStatistics
|
||||
INFO: Sending three monitoring packets to monitoring socket
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:43
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: foo@example.com
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains server: 127.0.0.1:42
|
||||
Dec 23, 2020 11:53:11 AM dslab.monitoring.MonitoringListener run
|
||||
INFO: Incoming packet contains address: bar@example.com
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,29 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.monitoring.MonitoringServerTest" tests="1" skipped="0" failures="1" errors="0" timestamp="2020-11-26T09:41:23" hostname="clemens-desktop" time="0.002">
|
||||
<testsuite name="dslab.monitoring.MonitoringServerTest" tests="1" skipped="0" failures="0" errors="0" timestamp="2020-12-23T10:53:19" hostname="skynet" time="6.017">
|
||||
<properties/>
|
||||
<testcase name="runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly" classname="dslab.monitoring.MonitoringServerTest" time="0.002">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+8"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+8"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.monitoring.MonitoringServerTest.runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly(MonitoringServerTest.java:27)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly" classname="dslab.monitoring.MonitoringServerTest" time="6.017"/>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:53:19 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Starting thread with component dslab.monitoring.MonitoringServer@7baac9c6
|
||||
Dec 23, 2020 11:53:19 AM dslab.monitoring.MonitoringServer run
|
||||
INFO: Creating UDP serverSocket for dslab.monitoring.MonitoringServer@7baac9c6
|
||||
Dec 23, 2020 11:53:22 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Trying to create socket on port 11628
|
||||
Dec 23, 2020 11:53:22 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Shutting down component dslab.monitoring.MonitoringServer@7baac9c6
|
||||
Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownMonitoringServer_createsAndStopsUdpSocketCorrectly
|
||||
INFO: Waiting for thread to stop for component dslab.monitoring.MonitoringServer@7baac9c6
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,13 +1,48 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.naming.NameserverTest" tests="4" skipped="0" failures="4" errors="0" timestamp="2020-11-26T09:41:23" hostname="clemens-desktop" time="36.056">
|
||||
<testsuite name="dslab.naming.NameserverTest" tests="4" skipped="0" failures="4" errors="0" timestamp="2020-12-23T10:53:34" hostname="skynet" time="36.035">
|
||||
<properties/>
|
||||
<testcase name="ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly" classname="dslab.naming.NameserverTest" time="6.038">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+9"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly(NameserverTest.java:78)
|
||||
<testcase name="ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly" classname="dslab.naming.NameserverTest" time="6.016">
|
||||
<failure message="java.lang.AssertionError: Expected root nameserver to start a registry, but it couldn't be located or registry.list() failed" type="java.lang.AssertionError">java.lang.AssertionError: Expected root nameserver to start a registry, but it couldn't be located or registry.list() failed
|
||||
at dslab.naming.NameserverTest.ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly(NameserverTest.java:81)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
Caused by: java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
|
||||
java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:209)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:196)
|
||||
at java.rmi/sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
|
||||
at java.rmi/sun.rmi.registry.RegistryImpl_Stub.list(RegistryImpl_Stub.java:90)
|
||||
at dslab.naming.NameserverTest.ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly(NameserverTest.java:79)
|
||||
... 12 more
|
||||
Caused by: java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
|
||||
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
|
||||
at java.base/java.net.Socket.connect(Socket.java:609)
|
||||
at java.base/java.net.Socket.connect(Socket.java:558)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:454)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:231)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPDirectSocketFactory.createSocket(TCPDirectSocketFactory.java:40)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:617)
|
||||
... 17 more
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="ns02_startRootNameserver_registersRemoteObjectCorrectly" classname="dslab.naming.NameserverTest" time="6.006">
|
||||
<failure message="java.lang.AssertionError: Error while looking up remote object " type="java.lang.AssertionError">java.lang.AssertionError: Error while looking up remote object
|
||||
at dslab.naming.NameserverTest.ns02_startRootNameserver_registersRemoteObjectCorrectly(NameserverTest.java:118)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -22,13 +57,15 @@
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="ns02_startRootNameserver_registersRemoteObjectCorrectly" classname="dslab.naming.NameserverTest" time="6.005">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+9"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns02_startRootNameserver_registersRemoteObjectCorrectly(NameserverTest.java:109)
|
||||
<testcase name="ns03_startingZoneNameserver_registersNameserverCorrectly" classname="dslab.naming.NameserverTest" time="12.005">
|
||||
<failure message="java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 	java.net.ConnectException: Connection refused (Connection refused)" type="java.rmi.ConnectException">java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
|
||||
java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:209)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:196)
|
||||
at java.rmi/sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
|
||||
at java.rmi/sun.rmi.registry.RegistryImpl_Stub.list(RegistryImpl_Stub.java:90)
|
||||
at dslab.naming.NameserverTest.ns03_startingZoneNameserver_registersNameserverCorrectly(NameserverTest.java:143)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -41,36 +78,30 @@
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
Caused by: java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
|
||||
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
|
||||
at java.base/java.net.Socket.connect(Socket.java:609)
|
||||
at java.base/java.net.Socket.connect(Socket.java:558)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:454)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:231)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPDirectSocketFactory.createSocket(TCPDirectSocketFactory.java:40)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:617)
|
||||
... 17 more
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="ns03_startingZoneNameserver_registersNameserverCorrectly" classname="dslab.naming.NameserverTest" time="12.007">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+9"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns03_startingZoneNameserver_registersNameserverCorrectly(NameserverTest.java:141)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly" classname="dslab.naming.NameserverTest" time="12.006">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range+9"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range+9"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.naming.NameserverTest.ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly(NameserverTest.java:185)
|
||||
<testcase name="ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly" classname="dslab.naming.NameserverTest" time="12.008">
|
||||
<failure message="java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 	java.net.ConnectException: Connection refused (Connection refused)" type="java.rmi.ConnectException">java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
|
||||
java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:209)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:196)
|
||||
at java.rmi/sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
|
||||
at java.rmi/sun.rmi.registry.RegistryImpl_Stub.lookup(RegistryImpl_Stub.java:116)
|
||||
at dslab.naming.NameserverTest.ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly(NameserverTest.java:189)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
@ -83,32 +114,49 @@
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
Caused by: java.net.ConnectException: Connection refused (Connection refused)
|
||||
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
|
||||
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
|
||||
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
|
||||
at java.base/java.net.Socket.connect(Socket.java:609)
|
||||
at java.base/java.net.Socket.connect(Socket.java:558)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:454)
|
||||
at java.base/java.net.Socket.<init>(Socket.java:231)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPDirectSocketFactory.createSocket(TCPDirectSocketFactory.java:40)
|
||||
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:617)
|
||||
... 17 more
|
||||
</failure>
|
||||
</testcase>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[Nov 26, 2020 10:41:23 AM dslab.naming.NameserverTest ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly
|
||||
<system-err><![CDATA[Dec 23, 2020 11:53:34 AM dslab.naming.NameserverTest ns01_startAndShutdownRootNameserver_createsAndUnexportsRegistryCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:26 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:37 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:29 AM dslab.naming.NameserverTest ns02_startRootNameserver_registersRemoteObjectCorrectly
|
||||
Dec 23, 2020 11:53:40 AM dslab.naming.NameserverTest ns02_startRootNameserver_registersRemoteObjectCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:32 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:43 AM dslab.naming.NameserverTest ns02_startRootNameserver_registersRemoteObjectCorrectly
|
||||
INFO: Looking up root-nameserver in registry
|
||||
Dec 23, 2020 11:53:43 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:35 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
Dec 23, 2020 11:53:46 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:38 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
Dec 23, 2020 11:53:49 AM dslab.naming.NameserverTest ns03_startingZoneNameserver_registersNameserverCorrectly
|
||||
INFO: Starting ns-planet thread
|
||||
Nov 26, 2020 10:41:41 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:52 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:44 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:53:55 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:47 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
Dec 23, 2020 11:53:58 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
INFO: Starting ns-root thread
|
||||
Nov 26, 2020 10:41:50 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
Dec 23, 2020 11:54:01 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
INFO: Starting ns-planet thread
|
||||
Nov 26, 2020 10:41:53 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:54:04 AM dslab.naming.NameserverTest ns04_registerAndLookupMailboxServer_registersAndReturnsAddressCorrectly
|
||||
INFO: Looking up root-nameserver in registry
|
||||
Dec 23, 2020 11:54:04 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
Nov 26, 2020 10:41:56 AM dslab.naming.NameserverTest sendShutdown
|
||||
Dec 23, 2020 11:54:07 AM dslab.naming.NameserverTest sendShutdown
|
||||
INFO: Sending shutdown to component component
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,52 +1,82 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.transfer.TransferServerProtocolTest" tests="2" skipped="0" failures="2" errors="0" timestamp="2020-11-26T09:41:59" hostname="clemens-desktop" time="6.005">
|
||||
<testsuite name="dslab.transfer.TransferServerProtocolTest" tests="2" skipped="0" failures="0" errors="0" timestamp="2020-12-23T10:53:28" hostname="skynet" time="6.037">
|
||||
<properties/>
|
||||
<testcase name="defaultDmtpInteractionTest" classname="dslab.transfer.TransferServerProtocolTest" time="3.004">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.transfer.TransferServerProtocolTest.setUp(TransferServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="sendWithoutRecipient_returnsErrorOnSend" classname="dslab.transfer.TransferServerProtocolTest" time="3.001">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.transfer.TransferServerProtocolTest.setUp(TransferServerProtocolTest.java:31)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
|
||||
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="defaultDmtpInteractionTest" classname="dslab.transfer.TransferServerProtocolTest" time="3.015"/>
|
||||
<testcase name="sendWithoutRecipient_returnsErrorOnSend" classname="dslab.transfer.TransferServerProtocolTest" time="3.022"/>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer run
|
||||
INFO: Creating serverSocket for dslab.transfer.TransferServer@4f2780a4
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServerProtocolTest setUp
|
||||
INFO: Waiting for server socket to appear
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue currently empty. Waiting for messages to appear...
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@230cb815
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting subject to: hello
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting data to: hello from junit
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@13137acb
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@230cb815
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@13137acb
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer$Producer produce
|
||||
INFO: Added message from trillian@earth.planet
|
||||
to arthur@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
to queue
|
||||
Dec 23, 2020 11:53:28 AM dslab.transfer.TransferServer$Consumer run
|
||||
INFO: Consumer thread has been interrupted. Exiting...Thread[Thread-12,5,FailOnTimeoutGroup]
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServerProtocolTest setUp
|
||||
INFO: Waiting for server socket to appear
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer run
|
||||
INFO: Creating serverSocket for dslab.transfer.TransferServer@7f9374ad
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue not empty. Processing message...
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Took message from trillian@earth.planet
|
||||
to arthur@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
from queue
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: msg.getTo() contains: [arthur@earth.planet]
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Trying to send message to arthur@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer domainLookup
|
||||
INFO: Performing domain lookup for address arthur@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Domain lookup successful. Port is: 11622
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer replayMessage
|
||||
INFO: Replaying message for message: from trillian@earth.planet
|
||||
to arthur@earth.planet
|
||||
subject hello
|
||||
data hello from junit
|
||||
on port 11622
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer sendErrorMail
|
||||
INFO: Trying to send error mail to address trillian@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer domainLookup
|
||||
INFO: Performing domain lookup for address trillian@earth.planet
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer sendErrorMail
|
||||
SEVERE: Sending error mail failed because socket communication failed
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue currently empty. Waiting for messages to appear...
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@395b40fd
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting subject to: hello
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection run
|
||||
INFO: Setting data to: hello from junit
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@69536688
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.TransferServer$Consumer run
|
||||
INFO: Consumer thread has been interrupted. Exiting...Thread[Thread-18,5,FailOnTimeoutGroup]
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@395b40fd
|
||||
Dec 23, 2020 11:53:31 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@69536688
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
@ -1,29 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite name="dslab.transfer.TransferServerTest" tests="1" skipped="0" failures="1" errors="0" timestamp="2020-11-26T09:42:05" hostname="clemens-desktop" time="0.0">
|
||||
<testsuite name="dslab.transfer.TransferServerTest" tests="1" skipped="0" failures="0" errors="0" timestamp="2020-12-23T10:53:25" hostname="skynet" time="3.046">
|
||||
<properties/>
|
||||
<testcase name="runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly" classname="dslab.transfer.TransferServerTest" time="0.0">
|
||||
<failure message="java.lang.NumberFormatException: For input string: "port_range"" type="java.lang.NumberFormatException">java.lang.NumberFormatException: For input string: "port_range"
|
||||
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:652)
|
||||
at java.base/java.lang.Integer.parseInt(Integer.java:770)
|
||||
at dslab.util.Config.getInt(Config.java:52)
|
||||
at dslab.transfer.TransferServerTest.runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly(TransferServerTest.java:30)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
|
||||
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
|
||||
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
|
||||
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
|
||||
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
|
||||
at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
|
||||
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.lang.Thread.run(Thread.java:834)
|
||||
</failure>
|
||||
</testcase>
|
||||
<testcase name="runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly" classname="dslab.transfer.TransferServerTest" time="3.046"/>
|
||||
<system-out><![CDATA[]]></system-out>
|
||||
<system-err><![CDATA[]]></system-err>
|
||||
<system-err><![CDATA[Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Starting thread with component dslab.transfer.TransferServer@986eb44
|
||||
Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for socket to open on port 11620
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.TransferServer run
|
||||
INFO: Creating serverSocket for dslab.transfer.TransferServer@986eb44
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.TransferServer$Consumer consume
|
||||
INFO: Queue currently empty. Waiting for messages to appear...
|
||||
Dec 23, 2020 11:53:25 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Shutting down component dslab.transfer.TransferServer@986eb44
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@47f8f420
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.TransferServer$Consumer run
|
||||
INFO: Consumer thread has been interrupted. Exiting...Thread[Thread-9,5,FailOnTimeoutGroup]
|
||||
Dec 23, 2020 11:53:25 AM dslab.transfer.ClientConnection shutdown
|
||||
INFO: Shutting down client connection dslab.transfer.ClientConnection@47f8f420
|
||||
Dec 23, 2020 11:53:28 AM dslab.monitoring.MonitoringServerTest runAndShutdownTransferServer_createsAndStopsTcpSocketCorrectly
|
||||
INFO: Waiting for thread to stop for component dslab.transfer.TransferServer@986eb44
|
||||
]]></system-err>
|
||||
</testsuite>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,32 +1,62 @@
|
||||
dslab/transfer/ClientConnection.java
|
||||
dslab.transfer.ClientConnection
|
||||
dslab/transfer/ClientListener.java
|
||||
dslab.transfer.ClientListener
|
||||
dslab/nameserver/Nameserver.java
|
||||
dslab.nameserver.Nameserver
|
||||
dslab/monitoring/MonitoringServer.java
|
||||
dslab.monitoring.MonitoringServer
|
||||
dslab/ComponentFactory.java
|
||||
dslab.ComponentFactory
|
||||
dslab/util/Keys.java
|
||||
dslab.util.Keys
|
||||
dslab/Message.java
|
||||
dslab.Message
|
||||
dslab/exception/UnknownDomainException.java
|
||||
dslab.exception.UnknownDomainException
|
||||
dslab/mailbox/IMailboxServer.java
|
||||
dslab.mailbox.IMailboxServer
|
||||
dslab/nameserver/INameserverRemote.java
|
||||
dslab.nameserver.INameserverRemote
|
||||
dslab/util/Keys.java
|
||||
dslab.util.Keys
|
||||
dslab/mailbox/DMTPListener.java
|
||||
dslab.mailbox.DMTPListener
|
||||
dslab/mailbox/DMTPConnection.java
|
||||
dslab.mailbox.DMTPConnection
|
||||
dslab/monitoring/IMonitoringServer.java
|
||||
dslab.monitoring.IMonitoringServer
|
||||
dslab/nameserver/InvalidDomainException.java
|
||||
dslab.nameserver.InvalidDomainException
|
||||
dslab/transfer/TransferServer.java
|
||||
dslab.transfer.TransferServer
|
||||
dslab/util/Config.java
|
||||
dslab.util.Config
|
||||
dslab/exception/MalformedInputException.java
|
||||
dslab.exception.MalformedInputException
|
||||
dslab/Email.java
|
||||
dslab.Email
|
||||
dslab/exception/UnknownRecipientException.java
|
||||
dslab.exception.UnknownRecipientException
|
||||
dslab/transfer/ITransferServer.java
|
||||
dslab.transfer.ITransferServer
|
||||
dslab/nameserver/AlreadyRegisteredException.java
|
||||
dslab.nameserver.AlreadyRegisteredException
|
||||
dslab/client/MessageClient.java
|
||||
dslab.client.MessageClient
|
||||
dslab/mailbox/DMAPConnection.java
|
||||
dslab.mailbox.DMAPConnection
|
||||
dslab/client/IMessageClient.java
|
||||
dslab.client.IMessageClient
|
||||
dslab/nameserver/INameserver.java
|
||||
dslab.nameserver.INameserver
|
||||
dslab/mailbox/MailboxServer.java
|
||||
dslab.mailbox.MailboxServer
|
||||
dslab/ComponentFactory.java
|
||||
dslab.ComponentFactory
|
||||
dslab/monitoring/MonitoringListener.java
|
||||
dslab.monitoring.MonitoringListener
|
||||
dslab/nameserver/INameserverRemote.java
|
||||
dslab.nameserver.INameserverRemote
|
||||
dslab/nameserver/InvalidDomainException.java
|
||||
dslab.nameserver.InvalidDomainException
|
||||
dslab/transfer/TransferServer.java
|
||||
dslab.transfer.TransferServer
|
||||
dslab.transfer.TransferServer$Consumer
|
||||
dslab.transfer.TransferServer$Producer
|
||||
dslab/exception/MissingInputException.java
|
||||
dslab.exception.MissingInputException
|
||||
dslab/util/Config.java
|
||||
dslab.util.Config
|
||||
dslab/exception/MessageNotFoundException.java
|
||||
dslab.exception.MessageNotFoundException
|
||||
dslab/nameserver/AlreadyRegisteredException.java
|
||||
dslab.nameserver.AlreadyRegisteredException
|
||||
dslab/mailbox/DMAPListener.java
|
||||
dslab.mailbox.DMAPListener
|
||||
|
||||
@ -6,10 +6,10 @@ dslab/Constants.java
|
||||
dslab.Constants
|
||||
dslab/client/MessageClientMailboxTest.java
|
||||
dslab.client.MessageClientMailboxTest
|
||||
dslab/TestInputStream.java
|
||||
dslab.TestInputStream
|
||||
dslab/StringMatches.java
|
||||
dslab.StringMatches
|
||||
dslab/TestInputStream.java
|
||||
dslab.TestInputStream
|
||||
dslab/transfer/TransferServerProtocolTest.java
|
||||
dslab.transfer.TransferServerProtocolTest
|
||||
dslab/mailbox/MailboxServerTest.java
|
||||
|
||||
62
src/main/java/dslab/Email.java
Normal file
62
src/main/java/dslab/Email.java
Normal file
@ -0,0 +1,62 @@
|
||||
package dslab;
|
||||
|
||||
import dslab.exception.MalformedInputException;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class Email {
|
||||
private String username;
|
||||
private String domain;
|
||||
|
||||
public Email(String email) throws MalformedInputException {
|
||||
if (email.split("@").length != 2)
|
||||
throw new MalformedInputException("error email addresses must be of the form user@domain: " + email);
|
||||
if (email.split("@")[0].isBlank())
|
||||
throw new MalformedInputException("error email addresses must be of the form user@domain" + email);
|
||||
if (email.split("@")[1].isBlank())
|
||||
throw new MalformedInputException("error email addresses must be of the form user@domain" + email);
|
||||
|
||||
this.username = email.split("@")[0];
|
||||
this.domain = email.split("@")[1];
|
||||
}
|
||||
|
||||
public Email(String username, String domain) {
|
||||
this.username = username;
|
||||
this.domain = domain;
|
||||
}
|
||||
|
||||
public String getUsername() {
|
||||
return username;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public String getDomain() {
|
||||
return domain;
|
||||
}
|
||||
|
||||
public void setDomain(String domain) {
|
||||
this.domain = domain;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return username + '@' + domain;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
Email email = (Email) o;
|
||||
return Objects.equals(getUsername(), email.getUsername()) &&
|
||||
Objects.equals(getDomain(), email.getDomain());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(getUsername(), getDomain());
|
||||
}
|
||||
}
|
||||
93
src/main/java/dslab/Message.java
Normal file
93
src/main/java/dslab/Message.java
Normal file
@ -0,0 +1,93 @@
|
||||
package dslab;
|
||||
|
||||
import dslab.exception.MissingInputException;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class Message {
|
||||
private ArrayList<Email> to = new ArrayList<>();
|
||||
private Email from;
|
||||
private String subject = "";
|
||||
private String data = "";
|
||||
private Integer id;
|
||||
|
||||
public Message() {
|
||||
}
|
||||
|
||||
public Message(ArrayList<Email> to, Email from, String subject, String data) {
|
||||
this.to = to;
|
||||
this.from = from;
|
||||
this.subject = subject;
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
public void allFieldsSet() throws MissingInputException {
|
||||
if (this.subject == null) this.subject = "";
|
||||
if (this.data == null) this.data = "";
|
||||
if (this.to.isEmpty()) throw new MissingInputException("error no receiver");
|
||||
if (this.from == null) throw new MissingInputException("error no sender");
|
||||
}
|
||||
|
||||
public void addTo(Email email) {
|
||||
to.add(email);
|
||||
}
|
||||
|
||||
public String printTo() {
|
||||
if (this.to.isEmpty())
|
||||
return null;
|
||||
return this.to.stream().map(Object::toString).collect(Collectors.joining(","));
|
||||
}
|
||||
|
||||
public ArrayList<Email> getTo() {
|
||||
return to;
|
||||
}
|
||||
|
||||
public void setTo(ArrayList<Email> to) {
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public Email getFrom() {
|
||||
return from;
|
||||
}
|
||||
|
||||
public void setFrom(Email from) {
|
||||
this.from = from;
|
||||
}
|
||||
|
||||
public String getSubject() {
|
||||
return subject;
|
||||
}
|
||||
|
||||
public void setSubject(String subject) {
|
||||
this.subject = subject;
|
||||
}
|
||||
|
||||
public String getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public void setData(String data) {
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String listMessage() {
|
||||
return getId() + " " + getFrom() + " " + getSubject();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "from " + getFrom().toString() + "\n" +
|
||||
"to " + printTo() + "\n" +
|
||||
"subject " + getSubject() + "\n" +
|
||||
"data " + getData() + "\n";
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
package dslab.exception;
|
||||
|
||||
public class MalformedInputException extends Exception {
|
||||
public MalformedInputException(String errorMessage) {
|
||||
super(errorMessage);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
package dslab.exception;
|
||||
|
||||
public class MessageNotFoundException extends Exception {
|
||||
public MessageNotFoundException(String errorMessage) {
|
||||
super(errorMessage);
|
||||
}
|
||||
}
|
||||
7
src/main/java/dslab/exception/MissingInputException.java
Normal file
7
src/main/java/dslab/exception/MissingInputException.java
Normal file
@ -0,0 +1,7 @@
|
||||
package dslab.exception;
|
||||
|
||||
public class MissingInputException extends Exception {
|
||||
public MissingInputException(String errorMessage) {
|
||||
super(errorMessage);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
package dslab.exception;
|
||||
|
||||
public class UnknownDomainException extends Exception {
|
||||
public UnknownDomainException(String errorMessage) {
|
||||
super(errorMessage);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
package dslab.exception;
|
||||
|
||||
public class UnknownRecipientException extends Exception {
|
||||
public UnknownRecipientException(String errorMessage) {
|
||||
super(errorMessage);
|
||||
}
|
||||
}
|
||||
194
src/main/java/dslab/mailbox/DMAPConnection.java
Normal file
194
src/main/java/dslab/mailbox/DMAPConnection.java
Normal file
@ -0,0 +1,194 @@
|
||||
package dslab.mailbox;
|
||||
|
||||
import dslab.Email;
|
||||
import dslab.Message;
|
||||
import dslab.exception.MessageNotFoundException;
|
||||
|
||||
import java.io.*;
|
||||
import java.net.Socket;
|
||||
import java.net.SocketException;
|
||||
import java.util.LinkedList;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class DMAPConnection implements Runnable {
|
||||
Logger logger = Logger.getLogger(DMAPConnection.class.getName());
|
||||
private final Socket socket;
|
||||
private PrintWriter out;
|
||||
private BufferedReader in;
|
||||
private Email currentUser = null;
|
||||
private final ConcurrentHashMap<Email, LinkedList<Message>> storage;
|
||||
private final ConcurrentHashMap<String, String> userStorage;
|
||||
|
||||
public DMAPConnection(Socket connection, ConcurrentHashMap<Email, LinkedList<Message>> storage, ConcurrentHashMap<String, String> userStorage) {
|
||||
this.socket = connection;
|
||||
this.storage = storage;
|
||||
this.userStorage = userStorage;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
logger.finer("Preparing for DMAP communication in " + this.toString());
|
||||
try {
|
||||
this.out = new PrintWriter(socket.getOutputStream(), true);
|
||||
this.in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
|
||||
out.println("ok DMAP");
|
||||
loginLoop();
|
||||
|
||||
String userInput;
|
||||
while (!Thread.currentThread().isInterrupted() && (userInput = in.readLine()) != null) {
|
||||
if ("quit".equals(userInput)) {
|
||||
out.println("ok bye");
|
||||
shutdown();
|
||||
} else if ("logout".equals(userInput)) {
|
||||
out.println("ok");
|
||||
currentUser = null;
|
||||
loginLoop();
|
||||
} else if ("list".equals(userInput)) {
|
||||
listMessages();
|
||||
} else if ("delete".equals(userInput.split("\\s+")[0])) {
|
||||
if (userInput.split("\\s+").length == 2) {
|
||||
try {
|
||||
deleteMessage(userInput.split("\\s+")[1]);
|
||||
} catch (MessageNotFoundException e) {
|
||||
out.println(e.getMessage());
|
||||
}
|
||||
} else {
|
||||
out.println("Please supply a message id to delete!");
|
||||
}
|
||||
} else if ("show".equals(userInput.split("\\s+")[0])) {
|
||||
if (userInput.split("\\s+").length == 2) {
|
||||
try {
|
||||
showMessage(userInput.split("\\s+")[1]);
|
||||
} catch (MessageNotFoundException e) {
|
||||
out.println(e.getMessage());
|
||||
}
|
||||
} else {
|
||||
out.println("Please supply a message id to show!");
|
||||
}
|
||||
} else {
|
||||
out.println("error protocol error");
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
} catch (InterruptedIOException ioe) {
|
||||
logger.info("Received interrupt from parent. Shutting down...");
|
||||
shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Failed to get IO-Stream");
|
||||
e.printStackTrace();
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
private void loginLoop() {
|
||||
String userInput;
|
||||
|
||||
try {
|
||||
while (!Thread.currentThread().isInterrupted()) {
|
||||
userInput = in.readLine();
|
||||
if ("quit".equals(userInput.split("\\s+")[0])) {
|
||||
out.println("ok bye");
|
||||
shutdown();
|
||||
} else if ("login".equals(userInput.split("\\s+")[0])) {
|
||||
String[] args = userInput.split("\\s+");
|
||||
if (args.length != 3)
|
||||
out.println("Please specify a username and password to login!");
|
||||
if (this.userStorage.containsKey(args[1])) {
|
||||
// Check if username exists
|
||||
if (args[2].equals(this.userStorage.get(args[1]))) {
|
||||
// Check if password matches
|
||||
for (Email email : this.storage.keySet()) {
|
||||
if (args[1].equals(email.getUsername())) {
|
||||
// Set current user if login successful
|
||||
currentUser = email;
|
||||
logger.info("User successfully logged in: " + currentUser.toString());
|
||||
out.println("ok");
|
||||
return;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
out.println("error wrong password");
|
||||
}
|
||||
} else {
|
||||
out.println("error unknown user");
|
||||
}
|
||||
} else {
|
||||
out.println("error not logged in");
|
||||
}
|
||||
}
|
||||
} catch (InterruptedIOException ioe) {
|
||||
logger.info("Received interrupt from parent. Shutting down...");
|
||||
shutdown();
|
||||
} catch (SocketException e) {
|
||||
logger.finer("Received interrupt. Exiting " + this.toString());
|
||||
shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Failed to get IO-Stream");
|
||||
e.printStackTrace();
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
private void showMessage(String id) throws MessageNotFoundException {
|
||||
int i;
|
||||
try {
|
||||
i = Integer.parseInt(id);
|
||||
} catch (NumberFormatException e) {
|
||||
throw new MessageNotFoundException("error unknown message id");
|
||||
}
|
||||
|
||||
for (Message m : storage.get(currentUser)) {
|
||||
if (m.getId() == i) {
|
||||
out.println(m);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
throw new MessageNotFoundException("error unknown message id");
|
||||
}
|
||||
|
||||
private void listMessages() {
|
||||
if (storage.get(currentUser).isEmpty()) {
|
||||
out.println("You do not have any messages at the moment!");
|
||||
return;
|
||||
}
|
||||
|
||||
for (Message m : storage.get(currentUser)) {
|
||||
out.println(m.listMessage());
|
||||
}
|
||||
}
|
||||
|
||||
public void deleteMessage (String id) throws MessageNotFoundException {
|
||||
int i;
|
||||
try {
|
||||
i = Integer.parseInt(id);
|
||||
} catch (NumberFormatException e) {
|
||||
throw new MessageNotFoundException("error unknown message id");
|
||||
}
|
||||
|
||||
for (Message m : storage.get(currentUser)) {
|
||||
if (m.getId() == i) {
|
||||
storage.get(currentUser).remove(m);
|
||||
out.println("ok");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
throw new MessageNotFoundException("error unknown message id");
|
||||
}
|
||||
|
||||
public void shutdown() {
|
||||
logger.info("Shutting down client connection " + this.toString());
|
||||
try {
|
||||
if (socket != null)
|
||||
socket.close();
|
||||
in.close();
|
||||
out.close();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error closing socket and/or IO-streams");
|
||||
e.printStackTrace();
|
||||
}
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
}
|
||||
73
src/main/java/dslab/mailbox/DMAPListener.java
Normal file
73
src/main/java/dslab/mailbox/DMAPListener.java
Normal file
@ -0,0 +1,73 @@
|
||||
package dslab.mailbox;
|
||||
|
||||
import dslab.Email;
|
||||
import dslab.Message;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InterruptedIOException;
|
||||
import java.net.ServerSocket;
|
||||
import java.net.Socket;
|
||||
import java.net.SocketException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedList;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class DMAPListener extends Thread {
|
||||
private final ServerSocket serverSocket;
|
||||
private final Logger logger = Logger.getLogger(DMAPListener.class.getName());
|
||||
private final ConcurrentHashMap<Email, LinkedList<Message>> storage;
|
||||
private final ConcurrentHashMap<String, String> userStorage;
|
||||
private final ArrayList<DMAPConnection> clients = new ArrayList<>();
|
||||
private final ExecutorService executorService = Executors.newCachedThreadPool();
|
||||
|
||||
public DMAPListener(ServerSocket serverSocket, ConcurrentHashMap<Email, LinkedList<Message>> storage, ConcurrentHashMap<String, String> userStorage) {
|
||||
this.serverSocket = serverSocket;
|
||||
this.storage = storage;
|
||||
this.userStorage = userStorage;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
while (!Thread.currentThread().isInterrupted()) {
|
||||
logger.finer("Waiting for request on serverSocket " + serverSocket.toString());
|
||||
try {
|
||||
Socket s = serverSocket.accept();
|
||||
logger.fine("Processing incoming socket " + s.toString());
|
||||
DMAPConnection dmapConnection = new DMAPConnection(s, storage, userStorage);
|
||||
clients.add(dmapConnection);
|
||||
executorService.submit(dmapConnection);
|
||||
} catch (InterruptedIOException | SocketException e) {
|
||||
logger.finer("Received interrupt. Exiting " + this.toString());
|
||||
this.shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error starting serverSocket " + serverSocket.toString());
|
||||
e.printStackTrace();
|
||||
this.shutdown();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void shutdown() {
|
||||
logger.finer("Shutting down DMAPListener " + this.toString());
|
||||
for (DMAPConnection client : clients) {
|
||||
if (client != null)
|
||||
client.shutdown();
|
||||
}
|
||||
executorService.shutdown();
|
||||
try {
|
||||
if (!executorService.awaitTermination(60, TimeUnit.SECONDS)) {
|
||||
executorService.shutdownNow();
|
||||
if (!executorService.awaitTermination(60, TimeUnit.SECONDS))
|
||||
System.err.println("Pool did not terminate");
|
||||
}
|
||||
} catch (InterruptedException ie) {
|
||||
executorService.shutdownNow();
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
this.interrupt();
|
||||
}
|
||||
}
|
||||
166
src/main/java/dslab/mailbox/DMTPConnection.java
Normal file
166
src/main/java/dslab/mailbox/DMTPConnection.java
Normal file
@ -0,0 +1,166 @@
|
||||
package dslab.mailbox;
|
||||
|
||||
import dslab.Email;
|
||||
import dslab.Message;
|
||||
import dslab.exception.MalformedInputException;
|
||||
|
||||
import java.io.*;
|
||||
import java.net.Socket;
|
||||
import java.net.SocketException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.LinkedList;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class DMTPConnection implements Runnable {
|
||||
Logger logger = Logger.getLogger(DMTPConnection.class.getName());
|
||||
private final Socket socket;
|
||||
private PrintWriter out;
|
||||
private BufferedReader in;
|
||||
|
||||
private Message msg = new Message();
|
||||
|
||||
private final String domain;
|
||||
|
||||
private final ConcurrentHashMap<Email, LinkedList<Message>> messageStorage;
|
||||
private final ConcurrentHashMap<String, String> userStorage;
|
||||
|
||||
public DMTPConnection(Socket connection, ConcurrentHashMap<Email, LinkedList<Message>> messageStorage, ConcurrentHashMap<String, String> userStorage, String domain) {
|
||||
this.socket = connection;
|
||||
this.messageStorage = messageStorage;
|
||||
this.userStorage = userStorage;
|
||||
this.domain = domain;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
logger.finer("Preparing for DMTP communication in " + this.toString());
|
||||
try {
|
||||
this.out = new PrintWriter(socket.getOutputStream(), true);
|
||||
this.in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
|
||||
out.println("ok DMTP");
|
||||
|
||||
String userInput;
|
||||
|
||||
try {
|
||||
if (!("begin".equals(in.readLine()))) {
|
||||
out.println("error protocol error");
|
||||
shutdown();
|
||||
}
|
||||
} catch (SocketException e) {
|
||||
// Thrown if socket has already been closed by shutdown() method
|
||||
logger.finer("Received interrupt. Exiting " + this.toString());
|
||||
shutdown();
|
||||
}
|
||||
out.println("ok");
|
||||
|
||||
while (!Thread.currentThread().isInterrupted() && (userInput = in.readLine()) != null) {
|
||||
if ("quit".equals(userInput)) {
|
||||
out.println("ok bye");
|
||||
shutdown();
|
||||
} else if ("send".equals(userInput)) {
|
||||
storeMessage();
|
||||
out.println("ok");
|
||||
} else if ("to".equals(userInput.split("\\s+")[0])) {
|
||||
msg.setTo(new ArrayList<>());
|
||||
String[] emailAddresses = userInput.split("\\s+")[1].split(",");
|
||||
logger.info("Split EMail addresses: " + Arrays.toString(emailAddresses));
|
||||
int count = 0;
|
||||
try {
|
||||
for (String emailAddress : emailAddresses) {
|
||||
logger.info("Current email address in msg.getTo(): " + emailAddress);
|
||||
Email add = new Email(emailAddress);
|
||||
if (this.domain.equals(add.getDomain())) {
|
||||
logger.info("Address " + emailAddress + " belongs to this domain " + this.domain);
|
||||
if (!this.userStorage.containsKey(add.getUsername())) {
|
||||
logger.info("Our userStorage in domain " + this.domain + " does not contain user " + add.getUsername());
|
||||
out.println("error unknown recipient " + add.toString());
|
||||
} else {
|
||||
logger.info("Address " + add.toString() + " belongs to this domain and user exists. Adding address to msg.To() field");
|
||||
msg.addTo(add);
|
||||
count++;
|
||||
}
|
||||
} else {
|
||||
logger.info("Address " + emailAddress + " does not belong to this domain. Adding anyway...");
|
||||
msg.addTo(add);
|
||||
count++;
|
||||
}
|
||||
}
|
||||
if (count != 0)
|
||||
out.println("ok " + count);
|
||||
} catch (MalformedInputException e) {
|
||||
out.println(e.getMessage());
|
||||
}
|
||||
} else if ("from".equals(userInput.split("\\s+")[0])) {
|
||||
try {
|
||||
Email from = new Email(userInput.split("\\s+")[1]);
|
||||
this.msg.setFrom(from);
|
||||
out.println("ok");
|
||||
} catch (MalformedInputException mie) {
|
||||
out.println(mie.getMessage());
|
||||
}
|
||||
} else if ("subject".equals(userInput.split("\\s+")[0])) {
|
||||
String subject = "";
|
||||
if (userInput.split("\\s+").length > 1)
|
||||
subject = userInput.split("\\s+", 2)[1];
|
||||
msg.setSubject(subject);
|
||||
out.println("ok");
|
||||
} else if ("data".equals(userInput.split("\\s+")[0])) {
|
||||
String data = userInput.split("\\s+", 2)[1];
|
||||
msg.setData(data);
|
||||
out.println("ok");
|
||||
} else {
|
||||
out.println("error protocol error");
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
} catch (InterruptedIOException ioe) {
|
||||
logger.info("Received interrupt from parent. Shutting down...");
|
||||
shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Failed to get IO-Stream");
|
||||
e.printStackTrace();
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
private synchronized void storeMessage() {
|
||||
logger.info("Storing message " + msg.toString());
|
||||
this.msg.setId(MailboxServer.id++);
|
||||
boolean alreadyPresent;
|
||||
for (Email recipient : this.msg.getTo()) {
|
||||
alreadyPresent = false;
|
||||
logger.info("storeMessage(): checking if msg " + msg.listMessage() + " already exists for recipient " + recipient.toString());
|
||||
if (this.messageStorage.containsKey(recipient)) {
|
||||
// Check if message already exists for user
|
||||
for (Message m : this.messageStorage.get(recipient)) {
|
||||
if (this.msg.getId().equals(m.getId())) {
|
||||
logger.info("storeMessage(): msg " + msg.listMessage() + " already exists for recipient " + recipient.toString());
|
||||
alreadyPresent = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// Save only if message doesn't already exist
|
||||
if (!alreadyPresent) {
|
||||
this.messageStorage.get(recipient).add(this.msg);
|
||||
}
|
||||
}
|
||||
}
|
||||
this.msg = new Message();
|
||||
}
|
||||
|
||||
public void shutdown() {
|
||||
logger.info("Shutting down client connection " + this.toString());
|
||||
try {
|
||||
if (socket != null)
|
||||
socket.close();
|
||||
in.close();
|
||||
out.close();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error closing socket and/or IO-streams");
|
||||
e.printStackTrace();
|
||||
}
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
}
|
||||
75
src/main/java/dslab/mailbox/DMTPListener.java
Normal file
75
src/main/java/dslab/mailbox/DMTPListener.java
Normal file
@ -0,0 +1,75 @@
|
||||
package dslab.mailbox;
|
||||
|
||||
import dslab.Email;
|
||||
import dslab.Message;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InterruptedIOException;
|
||||
import java.net.ServerSocket;
|
||||
import java.net.Socket;
|
||||
import java.net.SocketException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedList;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class DMTPListener extends Thread {
|
||||
private final ServerSocket serverSocket;
|
||||
private final Logger logger = Logger.getLogger(DMTPListener.class.getName());
|
||||
private final ArrayList<DMTPConnection> clients = new ArrayList<>();
|
||||
private final ExecutorService executorService = Executors.newCachedThreadPool();
|
||||
private final ConcurrentHashMap<Email, LinkedList<Message>> messageStorage;
|
||||
private final ConcurrentHashMap<String, String> userStorage;
|
||||
private final String domain;
|
||||
|
||||
public DMTPListener(ServerSocket serverSocket, ConcurrentHashMap<Email, LinkedList<Message>> storage, ConcurrentHashMap<String, String> userStorage, String domain) {
|
||||
this.serverSocket = serverSocket;
|
||||
this.messageStorage = storage;
|
||||
this.userStorage = userStorage;
|
||||
this.domain = domain;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
while (!Thread.currentThread().isInterrupted()) {
|
||||
logger.finer("Waiting for request on serverSocket " + serverSocket.toString());
|
||||
try {
|
||||
Socket s = serverSocket.accept();
|
||||
logger.fine("Processing incoming socket " + s.toString());
|
||||
DMTPConnection dmtpConnection = new DMTPConnection(s, messageStorage, userStorage, domain);
|
||||
clients.add(dmtpConnection);
|
||||
executorService.submit(dmtpConnection);
|
||||
} catch (InterruptedIOException | SocketException e) {
|
||||
logger.finer("Received interrupt. Exiting " + this.toString());
|
||||
this.shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error starting serverSocket " + serverSocket.toString());
|
||||
e.printStackTrace();
|
||||
this.shutdown();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void shutdown() {
|
||||
logger.finer("Shutting down DMTPListener " + this.toString());
|
||||
for (DMTPConnection client : clients) {
|
||||
if (client != null)
|
||||
client.shutdown();
|
||||
}
|
||||
executorService.shutdown();
|
||||
try {
|
||||
if (!executorService.awaitTermination(60, TimeUnit.SECONDS)) {
|
||||
executorService.shutdownNow();
|
||||
if (!executorService.awaitTermination(60, TimeUnit.SECONDS))
|
||||
System.err.println("Pool did not terminate");
|
||||
}
|
||||
} catch (InterruptedException ie) {
|
||||
executorService.shutdownNow();
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
this.interrupt();
|
||||
}
|
||||
}
|
||||
@ -1,12 +1,36 @@
|
||||
package dslab.mailbox;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.PrintStream;
|
||||
import java.net.ServerSocket;
|
||||
import java.util.LinkedList;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import at.ac.tuwien.dsg.orvell.Shell;
|
||||
import at.ac.tuwien.dsg.orvell.StopShellException;
|
||||
import at.ac.tuwien.dsg.orvell.annotation.Command;
|
||||
import dslab.ComponentFactory;
|
||||
import dslab.Email;
|
||||
import dslab.Message;
|
||||
import dslab.util.Config;
|
||||
|
||||
public class MailboxServer implements IMailboxServer, Runnable {
|
||||
private static final Logger logger = Logger.getLogger(MailboxServer.class.getName());
|
||||
private final String domain;
|
||||
private ServerSocket dmtpServerSocket;
|
||||
private ServerSocket dmapServerSocket;
|
||||
private final Shell shell;
|
||||
private final Integer dmtpServerPort;
|
||||
private final Integer dmapServerPort;
|
||||
private DMTPListener dmtpListener;
|
||||
private DMAPListener dmapListener;
|
||||
private final ConcurrentHashMap<Email, LinkedList<Message>> messageStorage = new ConcurrentHashMap<>();
|
||||
private final ConcurrentHashMap<String, String> userStorage = new ConcurrentHashMap<>();
|
||||
|
||||
public static volatile Integer id;
|
||||
|
||||
|
||||
/**
|
||||
* Creates a new server instance.
|
||||
@ -17,17 +41,67 @@ public class MailboxServer implements IMailboxServer, Runnable {
|
||||
* @param out the output stream to write console output to
|
||||
*/
|
||||
public MailboxServer(String componentId, Config config, InputStream in, PrintStream out) {
|
||||
// TODO
|
||||
this.domain = config.getString("domain");
|
||||
Config userConfig = new Config(config.getString("users.config"));
|
||||
|
||||
// Load users from config into userStorage for authentication
|
||||
for (String key : userConfig.listKeys()) {
|
||||
userStorage.put(key, userConfig.getString(key));
|
||||
}
|
||||
// Load Email Addresses into messageStorage
|
||||
for (String key : userStorage.keySet()) {
|
||||
Email current = new Email(key, domain);
|
||||
messageStorage.put(current, new LinkedList<>());
|
||||
}
|
||||
|
||||
id = 0;
|
||||
|
||||
this.shell = new Shell(in, out);
|
||||
this.shell.register(this);
|
||||
this.shell.setPrompt("Mailboxserver> ");
|
||||
this.dmtpServerPort = config.getInt("dmtp.tcp.port");
|
||||
this.dmapServerPort = config.getInt("dmap.tcp.port");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
// TODO
|
||||
logger.info("Creating DMTP and DMAP serverSockets for MailboxServer + " + this.toString());
|
||||
try {
|
||||
this.dmtpServerSocket = new ServerSocket(dmtpServerPort);
|
||||
this.dmapServerSocket = new ServerSocket(dmapServerPort);
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error creating one of the two server sockets");
|
||||
e.printStackTrace();
|
||||
shutdown();
|
||||
}
|
||||
this.dmtpListener = new DMTPListener(this.dmtpServerSocket, this.messageStorage, this.userStorage, this.domain);
|
||||
this.dmtpListener.start();
|
||||
this.dmapListener = new DMAPListener(this.dmapServerSocket, this.messageStorage, this.userStorage);
|
||||
this.dmapListener.start();
|
||||
this.shell.run();
|
||||
}
|
||||
|
||||
@Command
|
||||
@Override
|
||||
public void shutdown() {
|
||||
// TODO
|
||||
try {
|
||||
if (dmtpServerSocket != null)
|
||||
dmtpServerSocket.close();
|
||||
this.dmtpListener.interrupt();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error closing DMTP serverSocket " + dmtpServerSocket.toString());
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
try {
|
||||
if (dmapServerSocket != null)
|
||||
dmapServerSocket.close();
|
||||
this.dmapListener.interrupt();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error closing DMTP serverSocket " + dmapServerSocket.toString());
|
||||
e.printStackTrace();
|
||||
}
|
||||
throw new StopShellException();
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
|
||||
64
src/main/java/dslab/monitoring/MonitoringListener.java
Normal file
64
src/main/java/dslab/monitoring/MonitoringListener.java
Normal file
@ -0,0 +1,64 @@
|
||||
package dslab.monitoring;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InterruptedIOException;
|
||||
import java.net.DatagramPacket;
|
||||
import java.net.DatagramSocket;
|
||||
import java.net.SocketException;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class MonitoringListener extends Thread {
|
||||
private static final Logger logger = Logger.getLogger(MonitoringListener.class.getName());
|
||||
private final DatagramSocket serverSocket;
|
||||
private final ConcurrentHashMap<String, Integer> addresses;
|
||||
private final ConcurrentHashMap<String, Integer> servers;
|
||||
|
||||
public MonitoringListener(DatagramSocket serverSocket, ConcurrentHashMap<String, Integer> addresses, ConcurrentHashMap<String, Integer> servers) {
|
||||
this.serverSocket = serverSocket;
|
||||
this.addresses = addresses;
|
||||
this.servers = servers;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
byte[] recvBuffer = new byte[1024];
|
||||
while (!Thread.currentThread().isInterrupted()) {
|
||||
logger.finer("Waiting for request on UDP serverSocket " + serverSocket.toString());
|
||||
try {
|
||||
DatagramPacket packet = new DatagramPacket(recvBuffer, recvBuffer.length);
|
||||
serverSocket.receive(packet);
|
||||
logger.fine("Processing incoming socket " + serverSocket.toString());
|
||||
String receivedData = new String(packet.getData(), StandardCharsets.UTF_8).trim();
|
||||
String server = receivedData.split("\\s+")[0];
|
||||
String address = receivedData.split("\\s+")[1];
|
||||
logger.info("Incoming packet contains server: " + server);
|
||||
logger.info("Incoming packet contains address: " + address);
|
||||
// Add/Update num of packets sent by server
|
||||
if (!this.servers.containsKey(server))
|
||||
this.servers.put(server, 1);
|
||||
else
|
||||
this.servers.put(server, this.servers.get(server) + 1);
|
||||
// Add/Update num of packets sent for address
|
||||
if (!this.addresses.containsKey(address))
|
||||
this.addresses.put(address, 1);
|
||||
else
|
||||
this.addresses.put(address, this.addresses.get(address) + 1);
|
||||
} catch (InterruptedIOException | SocketException e) {
|
||||
logger.finer("Received interrupt. Exiting " + this.toString());
|
||||
this.shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error starting serverSocket " + serverSocket.toString());
|
||||
e.printStackTrace();
|
||||
this.shutdown();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void shutdown() {
|
||||
logger.finer("Shutting down MonitoringListener " + this.toString());
|
||||
this.serverSocket.close();
|
||||
this.interrupt();
|
||||
}
|
||||
}
|
||||
@ -1,12 +1,27 @@
|
||||
package dslab.monitoring;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.PrintStream;
|
||||
import java.net.DatagramSocket;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import at.ac.tuwien.dsg.orvell.Shell;
|
||||
import at.ac.tuwien.dsg.orvell.StopShellException;
|
||||
import at.ac.tuwien.dsg.orvell.annotation.Command;
|
||||
import dslab.ComponentFactory;
|
||||
import dslab.util.Config;
|
||||
|
||||
public class MonitoringServer implements IMonitoringServer {
|
||||
private static final Logger logger = Logger.getLogger(MonitoringServer.class.getName());
|
||||
private DatagramSocket serverSocket;
|
||||
private final Shell shell;
|
||||
private final Integer serverPort;
|
||||
private MonitoringListener monitoringListener;
|
||||
private final ConcurrentHashMap<String, Integer> addresses = new ConcurrentHashMap<>();
|
||||
private final ConcurrentHashMap<String, Integer> servers = new ConcurrentHashMap<>();
|
||||
|
||||
|
||||
/**
|
||||
* Creates a new server instance.
|
||||
@ -17,27 +32,50 @@ public class MonitoringServer implements IMonitoringServer {
|
||||
* @param out the output stream to write console output to
|
||||
*/
|
||||
public MonitoringServer(String componentId, Config config, InputStream in, PrintStream out) {
|
||||
// TODO
|
||||
this.shell = new Shell(in, out);
|
||||
this.shell.register(this);
|
||||
this.shell.setPrompt("MonitoringServer> ");
|
||||
this.serverPort = config.getInt("udp.port");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
// TODO
|
||||
logger.info("Creating UDP serverSocket for " + this.toString());
|
||||
try {
|
||||
this.serverSocket = new DatagramSocket(serverPort);
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error creating serverSocket " + serverSocket.toString());
|
||||
e.printStackTrace();
|
||||
shutdown();
|
||||
}
|
||||
this.monitoringListener = new MonitoringListener(serverSocket, addresses, servers);
|
||||
this.monitoringListener.start();
|
||||
this.shell.run();
|
||||
}
|
||||
|
||||
@Command
|
||||
@Override
|
||||
public void addresses() {
|
||||
// TODO
|
||||
for (String address : addresses.keySet()) {
|
||||
this.shell.out().println(address + " " + addresses.get(address));
|
||||
}
|
||||
}
|
||||
|
||||
@Command
|
||||
@Override
|
||||
public void servers() {
|
||||
// TODO
|
||||
for (String server : servers.keySet()) {
|
||||
this.shell.out().println(server + " " + servers.get(server));
|
||||
}
|
||||
}
|
||||
|
||||
@Command
|
||||
@Override
|
||||
public void shutdown() {
|
||||
// TODO
|
||||
if (serverSocket != null)
|
||||
serverSocket.close();
|
||||
this.monitoringListener.interrupt();
|
||||
throw new StopShellException();
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
|
||||
129
src/main/java/dslab/transfer/ClientConnection.java
Normal file
129
src/main/java/dslab/transfer/ClientConnection.java
Normal file
@ -0,0 +1,129 @@
|
||||
package dslab.transfer;
|
||||
|
||||
import dslab.Email;
|
||||
import dslab.Message;
|
||||
import dslab.exception.MalformedInputException;
|
||||
import dslab.exception.MissingInputException;
|
||||
|
||||
import java.io.*;
|
||||
import java.net.Socket;
|
||||
import java.net.SocketException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class ClientConnection implements Runnable {
|
||||
Logger logger = Logger.getLogger(ClientConnection.class.getName());
|
||||
private final Socket socket;
|
||||
private PrintWriter out;
|
||||
private BufferedReader in;
|
||||
|
||||
private Message msg = new Message();
|
||||
|
||||
public ClientConnection(Socket connection) {
|
||||
this.socket = connection;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
logger.finer("Preparing for DMTP communication in " + this.toString());
|
||||
try {
|
||||
this.out = new PrintWriter(socket.getOutputStream(), true);
|
||||
this.in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
|
||||
out.println("ok DMTP");
|
||||
|
||||
String userInput;
|
||||
|
||||
try {
|
||||
if (!("begin".equals(in.readLine()))) {
|
||||
out.println("error protocol error");
|
||||
shutdown();
|
||||
}
|
||||
} catch (SocketException e) {
|
||||
// Thrown if socket has already been closed by shutdown() method
|
||||
// TODO maybe send message that connection has been closed by server?
|
||||
logger.finer("Received interrupt. Exiting " + this.toString());
|
||||
shutdown();
|
||||
}
|
||||
out.println("ok");
|
||||
|
||||
while (!Thread.currentThread().isInterrupted() && (userInput = in.readLine()) != null) {
|
||||
if ("quit".equals(userInput)) {
|
||||
out.println("ok bye");
|
||||
shutdown();
|
||||
} else if ("send".equals(userInput)) {
|
||||
try {
|
||||
sendMessage();
|
||||
out.println("ok");
|
||||
} catch (MissingInputException e) {
|
||||
out.println(e.getMessage());
|
||||
}
|
||||
} else if ("to".equals(userInput.split("\\s+")[0])) {
|
||||
msg.setTo(new ArrayList<>());
|
||||
String[] emailAddresses = userInput.split("\\s+")[1].split(",");
|
||||
int count = 0;
|
||||
try {
|
||||
for (String emailAddress : emailAddresses) {
|
||||
msg.addTo(new Email(emailAddress));
|
||||
count++;
|
||||
}
|
||||
out.println("ok " + count);
|
||||
} catch (MalformedInputException mie) {
|
||||
out.println(mie.getMessage());
|
||||
}
|
||||
} else if ("from".equals(userInput.split("\\s+")[0])) {
|
||||
try {
|
||||
Email from = new Email(userInput.split("\\s+")[1]);
|
||||
this.msg.setFrom(from);
|
||||
out.println("ok");
|
||||
} catch (MalformedInputException mie) {
|
||||
out.println(mie.getMessage());
|
||||
}
|
||||
} else if ("subject".equals(userInput.split("\\s+")[0])) {
|
||||
String subject = "";
|
||||
if (userInput.split("\\s+").length > 1)
|
||||
subject = userInput.split("\\s+", 2)[1];
|
||||
logger.info("Setting subject to: " + subject);
|
||||
msg.setSubject(subject);
|
||||
out.println("ok");
|
||||
} else if ("data".equals(userInput.split("\\s+")[0])) {
|
||||
String data = "";
|
||||
if (userInput.split("\\s+").length > 1)
|
||||
data = userInput.split("\\s+", 2)[1];
|
||||
logger.info("Setting data to: " + data);
|
||||
msg.setData(data);
|
||||
out.println("ok");
|
||||
} else {
|
||||
out.println("error protocol error");
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
} catch (InterruptedIOException ioe) {
|
||||
logger.info("Received interrupt from parent. Shutting down...");
|
||||
shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Failed to get IO-Stream");
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
public void shutdown() {
|
||||
logger.info("Shutting down client connection " + this.toString());
|
||||
try {
|
||||
if (socket != null)
|
||||
socket.close();
|
||||
in.close();
|
||||
out.close();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error closing socket and/or IO-streams");
|
||||
e.printStackTrace();
|
||||
}
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
|
||||
public void sendMessage() throws MissingInputException {
|
||||
this.msg.allFieldsSet();
|
||||
TransferServer.Producer producer = new TransferServer.Producer(this.msg);
|
||||
new Thread(producer).start();
|
||||
this.msg = new Message();
|
||||
}
|
||||
}
|
||||
64
src/main/java/dslab/transfer/ClientListener.java
Normal file
64
src/main/java/dslab/transfer/ClientListener.java
Normal file
@ -0,0 +1,64 @@
|
||||
package dslab.transfer;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InterruptedIOException;
|
||||
import java.net.ServerSocket;
|
||||
import java.net.Socket;
|
||||
import java.net.SocketException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class ClientListener extends Thread {
|
||||
private final ServerSocket serverSocket;
|
||||
private final Logger logger = Logger.getLogger(ClientListener.class.getName());
|
||||
private final ArrayList<ClientConnection> clients = new ArrayList<>();
|
||||
private final ExecutorService executorService = Executors.newCachedThreadPool();
|
||||
|
||||
public ClientListener(ServerSocket serverSocket) {
|
||||
this.serverSocket = serverSocket;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
while (!Thread.currentThread().isInterrupted()) {
|
||||
logger.finer("Waiting for request on serverSocket " + serverSocket.toString());
|
||||
try {
|
||||
Socket s = serverSocket.accept();
|
||||
logger.fine("Processing incoming socket " + s.toString());
|
||||
ClientConnection clientConnection = new ClientConnection(s);
|
||||
clients.add(clientConnection);
|
||||
executorService.submit(clientConnection);
|
||||
} catch (InterruptedIOException | SocketException e) {
|
||||
logger.finer("Received interrupt. Exiting " + this.toString());
|
||||
this.shutdown();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error starting serverSocket " + serverSocket.toString());
|
||||
e.printStackTrace();
|
||||
this.shutdown();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void shutdown() {
|
||||
logger.finer("Shutting down ClientListener " + this.toString());
|
||||
for (ClientConnection client : clients) {
|
||||
if (client != null)
|
||||
client.shutdown();
|
||||
}
|
||||
executorService.shutdown();
|
||||
try {
|
||||
if (!executorService.awaitTermination(60, TimeUnit.SECONDS)) {
|
||||
executorService.shutdownNow();
|
||||
if (!executorService.awaitTermination(60, TimeUnit.SECONDS))
|
||||
System.err.println("Pool did not terminate");
|
||||
}
|
||||
} catch (InterruptedException ie) {
|
||||
executorService.shutdownNow();
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
this.interrupt();
|
||||
}
|
||||
}
|
||||
@ -1,12 +1,32 @@
|
||||
package dslab.transfer;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.io.PrintStream;
|
||||
import java.io.*;
|
||||
import java.net.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.concurrent.BlockingQueue;
|
||||
import java.util.concurrent.LinkedBlockingQueue;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import at.ac.tuwien.dsg.orvell.Shell;
|
||||
import at.ac.tuwien.dsg.orvell.StopShellException;
|
||||
import at.ac.tuwien.dsg.orvell.annotation.Command;
|
||||
import dslab.ComponentFactory;
|
||||
import dslab.Email;
|
||||
import dslab.Message;
|
||||
import dslab.exception.MalformedInputException;
|
||||
import dslab.exception.UnknownDomainException;
|
||||
import dslab.util.Config;
|
||||
|
||||
public class TransferServer implements ITransferServer, Runnable {
|
||||
private static final Logger logger = Logger.getLogger(TransferServer.class.getName());
|
||||
private ServerSocket serverSocket;
|
||||
private final Shell shell;
|
||||
private final Integer serverPort;
|
||||
public static final HashMap<String, Integer> mailboxServers = new HashMap<>();
|
||||
public static volatile BlockingQueue<Message> blockingQueue = new LinkedBlockingQueue<>(10);
|
||||
private final Consumer consumer;
|
||||
public static final Object lock = new Object();
|
||||
|
||||
/**
|
||||
* Creates a new server instance.
|
||||
@ -17,17 +37,46 @@ public class TransferServer implements ITransferServer, Runnable {
|
||||
* @param out the output stream to write console output to
|
||||
*/
|
||||
public TransferServer(String componentId, Config config, InputStream in, PrintStream out) {
|
||||
// TODO
|
||||
Config univerze = new Config("mailbox-univer-ze.properties");
|
||||
Config earthplanet = new Config("mailbox-earth-planet.properties");
|
||||
mailboxServers.put(univerze.getString("domain"), univerze.getInt("dmtp.tcp.port"));
|
||||
mailboxServers.put(earthplanet.getString("domain"), earthplanet.getInt("dmtp.tcp.port"));
|
||||
String monitoringHost = config.getString("monitoring.host");
|
||||
Integer monitoringPort = config.getInt("monitoring.port");
|
||||
this.serverPort = config.getInt("tcp.port");
|
||||
this.consumer = new Consumer(mailboxServers, monitoringHost, monitoringPort, "127.0.0.1", this.serverPort);
|
||||
this.shell = new Shell(in, out);
|
||||
this.shell.register(this);
|
||||
this.shell.setPrompt("Transferserver> ");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
// TODO
|
||||
logger.info("Creating serverSocket for " + this.toString());
|
||||
try {
|
||||
this.serverSocket = new ServerSocket(serverPort);
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error creating serverSocket " + serverSocket.toString());
|
||||
e.printStackTrace();
|
||||
shutdown();
|
||||
}
|
||||
new ClientListener(serverSocket).start();
|
||||
this.consumer.start();
|
||||
this.shell.run();
|
||||
}
|
||||
|
||||
@Command
|
||||
@Override
|
||||
public void shutdown() {
|
||||
// TODO
|
||||
try {
|
||||
if (serverSocket != null)
|
||||
serverSocket.close();
|
||||
} catch (IOException e) {
|
||||
logger.severe("Error closing serverSocket " + serverSocket.toString());
|
||||
e.printStackTrace();
|
||||
}
|
||||
this.consumer.interrupt();
|
||||
throw new StopShellException();
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
@ -35,4 +84,206 @@ public class TransferServer implements ITransferServer, Runnable {
|
||||
server.run();
|
||||
}
|
||||
|
||||
static class Producer extends Thread {
|
||||
private final Message msg;
|
||||
|
||||
Producer(Message msg) {
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
produce();
|
||||
} catch (InterruptedException e) {
|
||||
logger.info("Producer thread has been interrupted. Exiting..." + this.toString());
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
private void produce() throws InterruptedException {
|
||||
synchronized (lock) {
|
||||
while (blockingQueue.size() == 10) {
|
||||
lock.wait();
|
||||
}
|
||||
blockingQueue.put(msg);
|
||||
logger.info("Added message " + msg.toString() + " to queue");
|
||||
lock.notify();
|
||||
}
|
||||
}
|
||||
|
||||
private void shutdown() {
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
}
|
||||
|
||||
static class Consumer extends Thread {
|
||||
private final HashMap<String, Integer> mailboxServers;
|
||||
private final String monitoringHost;
|
||||
private final Integer monitoringPort;
|
||||
private final String transferHost;
|
||||
private final Integer transferPort;
|
||||
|
||||
Consumer(HashMap<String, Integer> mailboxServers,
|
||||
String monitoringHost,
|
||||
Integer monitoringPort,
|
||||
String transferHost,
|
||||
Integer transferPort) {
|
||||
this.mailboxServers = mailboxServers;
|
||||
this.monitoringHost = monitoringHost;
|
||||
this.monitoringPort = monitoringPort;
|
||||
this.transferHost = transferHost;
|
||||
this.transferPort = transferPort;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
consume();
|
||||
} catch (InterruptedException e) {
|
||||
logger.info("Consumer thread has been interrupted. Exiting..." + this.toString());
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
private void consume() throws InterruptedException {
|
||||
while (!Thread.currentThread().isInterrupted()) {
|
||||
synchronized (lock) {
|
||||
while (blockingQueue.isEmpty()) {
|
||||
logger.info("Queue currently empty. Waiting for messages to appear...");
|
||||
lock.wait();
|
||||
}
|
||||
logger.info("Queue not empty. Processing message...");
|
||||
Message msg = blockingQueue.take();
|
||||
logger.info("Took message " + msg.toString() + " from queue");
|
||||
HashMap<String, Boolean> sent = new HashMap<>();
|
||||
sent.put("earth.planet", false);
|
||||
sent.put("univer.ze", false);
|
||||
for (Email recipient : msg.getTo()) {
|
||||
logger.info("msg.getTo() contains: " + msg.getTo().toString());
|
||||
logger.info("Trying to send message to " + recipient.toString());
|
||||
int port;
|
||||
try {
|
||||
port = domainLookup(recipient);
|
||||
logger.info("Domain lookup successful. Port is: " + port);
|
||||
if (!sent.get(recipient.getDomain())) {
|
||||
replayMessage(msg, port);
|
||||
sent.put(recipient.getDomain(), true);
|
||||
}
|
||||
} catch (UnknownDomainException e) {
|
||||
sendErrorMail(msg, e.getMessage());
|
||||
}
|
||||
}
|
||||
lock.notify();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void replayMessage(Message msg, int port) {
|
||||
logger.info("Replaying message for message: " + msg.toString() + " on port " + port);
|
||||
try {
|
||||
Socket socket = new Socket("127.0.0.1", port);
|
||||
PrintWriter socketOut = new PrintWriter(socket.getOutputStream(), true);
|
||||
BufferedReader socketIn = new BufferedReader(new InputStreamReader(socket.getInputStream()));
|
||||
socketIn.readLine();
|
||||
socketOut.println("begin");
|
||||
socketIn.readLine();
|
||||
socketOut.println("subject " + msg.getSubject());
|
||||
socketIn.readLine();
|
||||
socketOut.println("data " + msg.getData());
|
||||
socketIn.readLine();
|
||||
socketOut.println("to " + msg.printTo());
|
||||
socketIn.readLine();
|
||||
socketOut.println("from " + msg.getFrom().toString());
|
||||
socketIn.readLine();
|
||||
socketOut.println("send");
|
||||
String result = socketIn.readLine();
|
||||
if (result.startsWith("error"))
|
||||
sendErrorMail(msg, result);
|
||||
socketIn.close();
|
||||
socketOut.close();
|
||||
socket.close();
|
||||
sendMonitoringMessage(msg);
|
||||
} catch (IOException e) {
|
||||
sendErrorMail(msg, "error failed to connect to server");
|
||||
}
|
||||
}
|
||||
|
||||
private int domainLookup(Email email) throws UnknownDomainException {
|
||||
logger.info("Performing domain lookup for address " + email.toString());
|
||||
if (this.mailboxServers.containsKey(email.getDomain()))
|
||||
return this.mailboxServers.get(email.getDomain());
|
||||
throw new UnknownDomainException("error domain not found: " + email.getDomain());
|
||||
}
|
||||
|
||||
private void sendErrorMail(Message msg, String error) {
|
||||
logger.info("Trying to send error mail to address " + msg.getFrom());
|
||||
Message errorMessage = msg;
|
||||
int port;
|
||||
try {
|
||||
port = domainLookup(errorMessage.getFrom());
|
||||
} catch (UnknownDomainException e) {
|
||||
logger.severe("Sending error mail failed because sender domain is unknown");
|
||||
return;
|
||||
}
|
||||
ArrayList<Email> newTo = new ArrayList<>();
|
||||
newTo.add(errorMessage.getFrom());
|
||||
errorMessage.setTo(newTo);
|
||||
try {
|
||||
errorMessage.setFrom(new Email("mailer@127.0.0.1"));
|
||||
} catch (MalformedInputException e) {
|
||||
logger.severe("The server's E-Mail address is wrong. This should not be happening!");
|
||||
e.printStackTrace();
|
||||
return;
|
||||
}
|
||||
try {
|
||||
Socket socket = new Socket("127.0.0.1", port);
|
||||
PrintWriter socketOut = new PrintWriter(socket.getOutputStream(), true);
|
||||
BufferedReader socketIn = new BufferedReader(new InputStreamReader(socket.getInputStream()));
|
||||
socketIn.readLine();
|
||||
socketOut.println("begin");
|
||||
socketIn.readLine();
|
||||
socketOut.println("subject " + errorMessage.getSubject());
|
||||
socketIn.readLine();
|
||||
socketOut.println("data " + error);
|
||||
socketIn.readLine();
|
||||
socketOut.println("to " + errorMessage.printTo());
|
||||
socketIn.readLine();
|
||||
socketOut.println("from " + errorMessage.getFrom().toString());
|
||||
socketIn.readLine();
|
||||
socketOut.println("send");
|
||||
String result = socketIn.readLine();
|
||||
if (result.startsWith("error"))
|
||||
logger.severe("Sending error mail failed: " + result);
|
||||
socketIn.close();
|
||||
socketOut.close();
|
||||
socket.close();
|
||||
sendMonitoringMessage(errorMessage);
|
||||
} catch (IOException e) {
|
||||
logger.severe("Sending error mail failed because socket communication failed");
|
||||
}
|
||||
}
|
||||
|
||||
private void sendMonitoringMessage(Message msg) {
|
||||
DatagramSocket socket;
|
||||
try {
|
||||
socket = new DatagramSocket();
|
||||
} catch (SocketException e) {
|
||||
logger.severe("Failed to create DatagramSocket!");
|
||||
return;
|
||||
}
|
||||
byte[] sendBuffer = (transferHost + ":" + transferPort + " " + msg.getFrom().toString()).getBytes();
|
||||
try {
|
||||
DatagramPacket packet = new DatagramPacket(sendBuffer, sendBuffer.length, Inet4Address.getByName(monitoringHost), monitoringPort);
|
||||
socket.send(packet);
|
||||
} catch (IOException e) {
|
||||
logger.severe("Failed to send packet to " + monitoringHost + " on port " + monitoringPort);
|
||||
}
|
||||
socket.close();
|
||||
}
|
||||
|
||||
private void shutdown() {
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
# TODO: replace host and port with that of your server
|
||||
transfer.host=127.0.0.1
|
||||
transfer.port=port_range
|
||||
transfer.port=11620
|
||||
transfer.email=arthur@earth.planet
|
||||
|
||||
# TODO: replace host and port with that of your server
|
||||
mailbox.host=127.0.0.1
|
||||
mailbox.port=port_range+3
|
||||
mailbox.port=11623
|
||||
mailbox.user=arthur
|
||||
mailbox.password=23456
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
# TODO: replace host and port with that of your server
|
||||
transfer.host=127.0.0.1
|
||||
transfer.port=port_range
|
||||
transfer.port=11620
|
||||
transfer.email=trillian@earth.planet
|
||||
|
||||
# TODO: replace host and port with that of your server
|
||||
mailbox.host=127.0.0.1
|
||||
mailbox.port=port_range+3
|
||||
mailbox.port=11623
|
||||
mailbox.user=trillian
|
||||
mailbox.password=12345
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
# TODO: replace host and port with that of your server
|
||||
transfer.host=127.0.0.1
|
||||
transfer.port=port_range+1
|
||||
transfer.port=11621
|
||||
transfer.email=zaphod@univer.ze
|
||||
|
||||
# TODO: replace host and port with that of your server
|
||||
mailbox.host=127.0.0.1
|
||||
mailbox.port=port_range+5
|
||||
mailbox.port=11625
|
||||
mailbox.user=zaphod
|
||||
mailbox.password=12345
|
||||
|
||||
@ -1,4 +1,3 @@
|
||||
# <domain>=<socket-address>
|
||||
# TODO: replace ports with the ports that your mailbox servers use
|
||||
earth.planet=127.0.0.1:port_range+2
|
||||
univer.ze=127.0.0.1:port_range+4
|
||||
earth.planet=127.0.0.1:11622
|
||||
univer.ze=127.0.0.1:11624
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
# TCP port used for the DMTP server socket
|
||||
# TODO: REPLACE with real value such as 16502 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
dmtp.tcp.port=port_range+2
|
||||
dmtp.tcp.port=11622
|
||||
|
||||
# TCP port used for the DMAP server socket
|
||||
# TODO: REPLACE with real value such as 16503 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
dmap.tcp.port=port_range+3
|
||||
dmap.tcp.port=11623
|
||||
|
||||
# mail domain managed by the mailbox server
|
||||
domain=earth.planet
|
||||
@ -21,5 +19,4 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# RMI registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
# TCP port used for the DMTP server socket
|
||||
# TODO: REPLACE with real value such as 16504 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
dmtp.tcp.port=port_range+4
|
||||
dmtp.tcp.port=11624
|
||||
|
||||
# TCP port used for the DMAP server socket
|
||||
# TODO: REPLACE with real value such as 16505 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
dmap.tcp.port=port_range+5
|
||||
dmap.tcp.port=11625
|
||||
|
||||
# mail domain managed by the mailbox server
|
||||
domain=univer.ze
|
||||
@ -21,5 +19,4 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# RMI registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
@ -1,3 +1,2 @@
|
||||
# UDP port used for accepting monitoring packets
|
||||
# TODO: REPLACE with real value such as 16508 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
udp.port=port_range+8
|
||||
udp.port=11628
|
||||
|
||||
@ -5,8 +5,7 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
|
||||
# managed domain
|
||||
|
||||
@ -5,8 +5,7 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
|
||||
# managed domain
|
||||
|
||||
@ -5,5 +5,4 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
@ -5,8 +5,7 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
|
||||
# managed domain
|
||||
|
||||
@ -1,11 +1,9 @@
|
||||
# TCP port used for the DMTP server socket
|
||||
# TODO: REPLACE with real value such as 16500 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
tcp.port=port_range
|
||||
tcp.port=11620
|
||||
|
||||
# UDP socket address of the monitoring server
|
||||
monitoring.host=127.0.0.1
|
||||
# TODO: REPLACE with the real value of the monitoring server port
|
||||
monitoring.port=port_range+8
|
||||
monitoring.port=11628
|
||||
|
||||
# ============================================= Required for Assignment 2
|
||||
|
||||
@ -16,5 +14,4 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# RMI registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
@ -1,11 +1,9 @@
|
||||
# TCP port used for the DMTP server socket
|
||||
# TODO: REPLACE with real value such as 16501 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
tcp.port=port_range+1
|
||||
tcp.port=11621
|
||||
|
||||
# UDP socket address of the monitoring server
|
||||
monitoring.host=127.0.0.1
|
||||
# TODO: REPLACE with the real value of the monitoring server port
|
||||
monitoring.port=port_range+8
|
||||
monitoring.port=11628
|
||||
|
||||
# ============================================= Required for Assignment 2
|
||||
|
||||
@ -16,5 +14,4 @@ root_id=root-nameserver
|
||||
registry.host=localhost
|
||||
|
||||
# RMI registry port
|
||||
# TODO: REPLACE with real value such as 16509 - considering the port range associated with your account - you have received after Lab 0 a port range (beginning_of_the_range, end_of_the_range)
|
||||
registry.port=port_range+9
|
||||
registry.port=11629
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user