leerho commented on code in PR #675: URL: https://github.com/apache/datasketches-java/pull/675#discussion_r2244099276
########## src/test/java/org/apache/datasketches/quantiles/DoublesSketchTest.java: ########## @@ -115,66 +114,68 @@ static void testSketchEquality(final DoublesSketch sketch1, @Test public void checkIsSameResource() { - int k = 16; - WritableMemory mem = WritableMemory.writableWrap(new byte[(k*16) +24]); - WritableMemory cmem = WritableMemory.writableWrap(new byte[8]); - DirectUpdateDoublesSketch duds = - (DirectUpdateDoublesSketch) DoublesSketch.builder().setK(k).build(mem); - assertTrue(duds.isSameResource(mem)); - DirectCompactDoublesSketch dcds = (DirectCompactDoublesSketch) duds.compact(cmem); - assertTrue(dcds.isSameResource(cmem)); + final int k = 16; + final MemorySegment seg = MemorySegment.ofArray(new byte[(k*16) +24]); + final MemorySegment cseg = MemorySegment.ofArray(new byte[8]); + final DirectUpdateDoublesSketch duds = + (DirectUpdateDoublesSketch) DoublesSketch.builder().setK(k).build(seg); + assertTrue(duds.isSameResource(seg)); + final DirectCompactDoublesSketch dcds = (DirectCompactDoublesSketch) duds.compact(cseg); + assertTrue(dcds.isSameResource(cseg)); - UpdateDoublesSketch uds = DoublesSketch.builder().setK(k).build(); - assertFalse(uds.isSameResource(mem)); + final UpdateDoublesSketch uds = DoublesSketch.builder().setK(k).build(); + assertFalse(uds.isSameResource(seg)); } @Test public void checkEmptyExceptions() { - int k = 16; - UpdateDoublesSketch uds = DoublesSketch.builder().setK(k).build(); - try { uds.getMaxItem(); fail(); } catch (IllegalArgumentException e) {} - try { uds.getMinItem(); fail(); } catch (IllegalArgumentException e) {} - try { uds.getRank(1.0); fail(); } catch (IllegalArgumentException e) {} - try { uds.getPMF(new double[] { 0, 0.5, 1.0 }); fail(); } catch (IllegalArgumentException e) {} - try { uds.getCDF(new double[] { 0, 0.5, 1.0 }); fail(); } catch (IllegalArgumentException e) {} + final int k = 16; + final UpdateDoublesSketch uds = DoublesSketch.builder().setK(k).build(); + try { uds.getMaxItem(); fail(); } catch (final IllegalArgumentException e) {} + try { uds.getMinItem(); fail(); } catch (final IllegalArgumentException e) {} + try { uds.getRank(1.0); fail(); } catch (final IllegalArgumentException e) {} + try { uds.getPMF(new double[] { 0, 0.5, 1.0 }); fail(); } catch (final IllegalArgumentException e) {} + try { uds.getCDF(new double[] { 0, 0.5, 1.0 }); fail(); } catch (final IllegalArgumentException e) {} } @Test public void directSketchShouldMoveOntoHeapEventually() { - WritableMemory wmem = WritableMemory.allocateDirect(1000, Arena.ofConfined()); - WritableMemory wmem2 = wmem; - UpdateDoublesSketch sketch = DoublesSketch.builder().build(wmem); - Assert.assertTrue(sketch.isSameResource(wmem)); + final Arena arena = Arena.ofConfined(); + final MemorySegment wseg = arena.allocate(1000); + final UpdateDoublesSketch sketch = DoublesSketch.builder().build(wseg); + Assert.assertTrue(sketch.isSameResource(wseg)); for (int i = 0; i < 1000; i++) { sketch.update(i); } - Assert.assertFalse(sketch.isSameResource(wmem)); - Assert.assertFalse(wmem2.isAlive()); + Assert.assertFalse(sketch.isSameResource(wseg)); + arena.close(); + Assert.assertFalse(wseg.scope().isAlive()); } @Test public void directSketchShouldMoveOntoHeapEventually2() { + final Arena arena = Arena.ofConfined(); int i = 0; - WritableMemory wmem = WritableMemory.allocateDirect(50, Arena.ofConfined()); - WritableMemory wmem2 = wmem; - UpdateDoublesSketch sketch = DoublesSketch.builder().build(wmem); - Assert.assertTrue(sketch.isSameResource(wmem)); + final MemorySegment wseg = arena.allocate(50); + final UpdateDoublesSketch sketch = DoublesSketch.builder().build(wseg); + Assert.assertTrue(sketch.isSameResource(wseg)); for (; i < 1000; i++) { - if (sketch.isSameResource(wmem)) { + if (sketch.isSameResource(wseg)) { sketch.update(i); } else { //println("MOVED OUT at i = " + i); break; } } - Assert.assertFalse(wmem2.isAlive()); + arena.close(); + Assert.assertFalse(wseg.scope().isAlive()); Review Comment: Same comment as above. Copilot is confused. Do not commit the suggestion. -- 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...@datasketches.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@datasketches.apache.org For additional commands, e-mail: dev-h...@datasketches.apache.org