garydgregory commented on code in PR #510:
URL: 
https://github.com/apache/httpcomponents-core/pull/510#discussion_r1894412006


##########
httpcore5-h2/src/test/java/org/apache/hc/core5/http2/impl/nio/TestAbstractH2StreamMultiplexer.java:
##########
@@ -270,5 +271,87 @@ void testInputHeaderContinuationFrame() throws 
IOException, HttpException {
         Mockito.verify(streamHandler).consumeHeader(headersCaptor.capture(), 
ArgumentMatchers.eq(false));
         Assertions.assertFalse(headersCaptor.getValue().isEmpty());
     }
+
+
+    @Test
+    void testUpdateWindowBehaviorComparison() {
+        AtomicInteger window = new AtomicInteger(1);  // Start with window at 1
+
+        // Test with new implementation where overflow should be capped at 
Integer.MAX_VALUE
+        int resultNew = updateWindowNew(window, Integer.MAX_VALUE);
+        System.out.println("New implementation: Current window size after 
attempted overflow: " + resultNew);
+        Assertions.assertEquals(Integer.MAX_VALUE, resultNew, "New 
implementation should cap at Integer.MAX_VALUE");
+
+        // Reset for old implementation test
+        window = new AtomicInteger(1);
+
+        // Test with old implementation where an overflow should throw an 
ArithmeticException
+        try {
+            updateWindowOld(window, Integer.MAX_VALUE);
+            Assertions.fail("Old implementation should throw 
ArithmeticException for overflow");
+        } catch (final ArithmeticException e) {
+            System.out.println("Old implementation: ArithmeticException 
caught: " + e.getMessage());
+        }
+
+        // Test non-overflow scenario for both implementations
+        window = new AtomicInteger(1);
+        final int resultNewSafe = updateWindowNew(window, Integer.MAX_VALUE / 
2 - 1);
+        System.out.println("New safe update result: " + resultNewSafe);

Review Comment:
   I don't think we should write to the console.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@hc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@hc.apache.org
For additional commands, e-mail: dev-h...@hc.apache.org

Reply via email to