Add implementation from Assignment 1

This commit is contained in:
2020-12-23 11:56:50 +01:00
parent 2ae01910cd
commit acfe3a0b12
64 changed files with 2723 additions and 1726 deletions
@@ -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: &quot;port_range&quot;
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: &quot;port_range&quot;
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>