RFR: 8301701 : java/net/DatagramSocket/DatagramSocketMulticasting.java should be hardened [v2]

Alan Bateman alanb at openjdk.org
Tue Feb 14 15:10:11 UTC 2023


On Tue, 14 Feb 2023 14:44:36 GMT, Darragh Clarke <duke at openjdk.org> wrote:

>> Updated `DatagramSocketMulticasting` to use Junit and also hardened the test to avoid occasional interference from other tests.
>> 
>> - Test now uses Junit Assertions, in general if the assertion used had been `assertTrue(foo==bar)` I replaced it with `assertEquals(foo,bar)` though there are some cases where I used `assertTrue` or `assertFalse`
>> - `testSendReceive` now retries up to 3 times if a message from an unexpected port is received
>> - Both `testSendReceive` and `testSendNoReceive` both have messages that use the methods name instead of just "hello"
>> 
>> Ran tiers 1-3 of tests as well as running this updated test to make sure it was stable
>
> Darragh Clarke has updated the pull request incrementally with one additional commit since the last revision:
> 
>   cleanup based on feedback

test/jdk/java/net/DatagramSocket/DatagramSocketMulticasting.java line 66:

> 64: import static org.junit.jupiter.api.Assumptions.assumeTrue;
> 65: 
> 66: @TestInstance(TestInstance.Lifecycle.PER_CLASS)

Is this needed?

test/jdk/java/net/DatagramSocket/DatagramSocketMulticasting.java line 325:

> 323:             p = new DatagramPacket(new byte[1024], 100);
> 324:             s.receive(p);
> 325:             if(s.getLocalPort()==p.getPort()){

I think you want `if (p.getPort() == s.getLocalPort()) {` here (missing spaces).

-------------

PR: https://git.openjdk.org/jdk/pull/12513


More information about the net-dev mailing list