Implement toString method for Net class and add unit tests for its functionality

This commit is contained in:
2025-02-12 17:57:30 +01:00
parent 65e8f378f5
commit f0d9c59350
2 changed files with 85 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
package net.berack.upo.valpre.sim;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
import net.berack.upo.valpre.rand.Distribution;
public class TestInteractions {
@Test
public void netToString() {
var net = new Net();
assertEquals("", net.toString());
net.addNode(new ServerNode.Builder("Source", new Distribution.Exponential(1)).build());
assertEquals("Source[servers:1, queue:100, spawn:0, Exponential(1.0)] -\n", net.toString());
net.addNode(new ServerNode.Builder("Server", new Distribution.Normal(3.2, 0.6)).build());
assertEquals("Source[servers:1, queue:100, spawn:0, Exponential(1.0)] -\n"
+ "Server[servers:1, queue:100, spawn:0, Normal(3.2, 0.6)] -\n", net.toString());
net.addConnection(0, 1, 1.0);
assertEquals("Source[servers:1, queue:100, spawn:0, Exponential(1.0)] -> Server(1.0)\n"
+ "Server[servers:1, queue:100, spawn:0, Normal(3.2, 0.6)] -\n", net.toString());
net.addNode(new ServerNode.Builder("Server2", new Distribution.Normal(4.1, 0.1)).build());
assertEquals("Source[servers:1, queue:100, spawn:0, Exponential(1.0)] -> Server(1.0)\n"
+ "Server[servers:1, queue:100, spawn:0, Normal(3.2, 0.6)] -\n"
+ "Server2[servers:1, queue:100, spawn:0, Normal(4.1, 0.1)] -\n", net.toString());
net.addConnection(0, 2, 1.0);
net.normalizeWeights();
assertEquals("Source[servers:1, queue:100, spawn:0, Exponential(1.0)] -> Server(0.5), Server2(0.5)\n"
+ "Server[servers:1, queue:100, spawn:0, Normal(3.2, 0.6)] -\n"
+ "Server2[servers:1, queue:100, spawn:0, Normal(4.1, 0.1)] -\n", net.toString());
net.addConnection(1, 2, 1.0);
assertEquals("Source[servers:1, queue:100, spawn:0, Exponential(1.0)] -> Server(0.5), Server2(0.5)\n"
+ "Server[servers:1, queue:100, spawn:0, Normal(3.2, 0.6)] -> Server2(1.0)\n"
+ "Server2[servers:1, queue:100, spawn:0, Normal(4.1, 0.1)] -\n", net.toString());
}
}