@Test
    public void WhenUnionBothHavingLevels_ExpectChange()
            throws UnknownHostException {
        int level = localhost_.getHostPath().length();
        RoutingTable table = new RoutingTable();
        table.setLocalhost(localhost_);
        Host host = new PGridHost("127.0.0.1", 3333);

        table.addReference(0, host);
        Assert.assertTrue(table.levelNumber() == level);
        Assert.assertTrue(table.uniqueHostsNumber() == 1);

        RoutingTable other = new RoutingTable();
        Host otherHost = new PGridHost("127.0.0.1", 1234);
        otherHost.setHostPath("0000");
        other.setLocalhost(otherHost);
        int otherLevel = otherHost.getHostPath().length();

        Host host1 = new PGridHost("127.0.0.1", 1111);
        other.addReference(0, host1);
        Assert.assertTrue(other.levelNumber() == otherLevel);
        Assert.assertTrue(other.uniqueHostsNumber() == 1);

        table.unionLevel(0, other);
        Assert.assertTrue(table.levelNumber() == level);
        Assert.assertTrue(table.contains(host) && table.contains(host1));
        Assert.assertTrue(table.uniqueHostsNumber() == 2);
    }