public void onPeriodicEmit() {
        updateCombinedWatermark();
    }
@Test
    void multipleDeferredWatermark() {
        TestingWatermarkOutput underlyingWatermarkOutput = createTestingWatermarkOutput();
        WatermarkOutputMultiplexer multiplexer =
                new WatermarkOutputMultiplexer(underlyingWatermarkOutput);

        WatermarkOutput watermarkOutput1 = createDeferredOutput(multiplexer);
        WatermarkOutput watermarkOutput2 = createDeferredOutput(multiplexer);
        WatermarkOutput watermarkOutput3 = createDeferredOutput(multiplexer);

        watermarkOutput1.emitWatermark(new Watermark(2));
        watermarkOutput2.emitWatermark(new Watermark(5));
        watermarkOutput3.markIdle();

        multiplexer.onPeriodicEmit();

        assertThat(underlyingWatermarkOutput.lastWatermark()).isEqualTo(new Watermark(2));
        assertThat(underlyingWatermarkOutput.isIdle()).isFalse();
    }