@Override
    public Optional<Decision> onMemoryUsageChanged(
            int numTotalRequestedBuffers, int currentPoolSize) {
        return numTotalRequestedBuffers < currentPoolSize * spillThreshold
                ? Optional.of(Decision.NO_ACTION)
                : Optional.empty();
    }
@Test
    void testOnUsedMemoryLow() {
        final int bufferPoolSize = 10;
        final int bufferThreshold = (int) (bufferPoolSize * SELECTIVE_SPILL_THRESHOLD);
        Optional<Decision> memoryUsageChangedDecision =
                spillStrategy.onMemoryUsageChanged(bufferThreshold - 1, bufferPoolSize);
        assertThat(memoryUsageChangedDecision).hasValue(Decision.NO_ACTION);
    }