[smartmeter] Test fix (#13907)

Signed-off-by: Matthias Steigenberger <matthias.steigenberger@gmail.com>
This commit is contained in:
msteigenberger
2023-02-21 16:26:44 +01:00
committed by GitHub
parent 7c20a4804a
commit 1a01a0e021
2 changed files with 19 additions and 13 deletions

View File

@@ -54,10 +54,10 @@ public class TestMeterReading {
MeterDevice<Object> meter = getMeterDevice(connector);
MeterValueListener changeListener = Mockito.mock(MeterValueListener.class);
meter.addValueChangeListener(changeListener);
Disposable disposable = meter.readValues(5000, Executors.newScheduledThreadPool(1), period);
long executionTime = period.toMillis() * executionCount;
Disposable disposable = meter.readValues(executionTime, Executors.newScheduledThreadPool(1), period);
try {
verify(changeListener, after(executionCount * period.toMillis() + period.toMillis() / 2).never())
.errorOccurred(any());
verify(changeListener, after(executionTime + period.toMillis() / 2 + 50).never()).errorOccurred(any());
verify(changeListener, times(executionCount)).valueChanged(any());
} finally {
disposable.dispose();
@@ -90,7 +90,7 @@ public class TestMeterReading {
final int timeout = 5000;
MockMeterReaderConnector connector = spy(getMockedConnector(true, () -> {
try {
Thread.sleep(timeout + 2000);
Thread.sleep(timeout);
} catch (InterruptedException e) {
}
return new Object();
@@ -98,9 +98,9 @@ public class TestMeterReading {
MeterDevice<Object> meter = getMeterDevice(connector);
MeterValueListener changeListener = Mockito.mock(MeterValueListener.class);
meter.addValueChangeListener(changeListener);
Disposable disposable = meter.readValues(5000, Executors.newScheduledThreadPool(2), period);
Disposable disposable = meter.readValues(timeout / 2, Executors.newScheduledThreadPool(2), period);
try {
verify(changeListener, after(timeout + 3000).times(1)).errorOccurred(any(TimeoutException.class));
verify(changeListener, timeout(timeout)).errorOccurred(any(TimeoutException.class));
} finally {
disposable.dispose();
}
@@ -112,7 +112,7 @@ public class TestMeterReading {
final int timeout = 5000;
MockMeterReaderConnector connector = spy(getMockedConnector(true, () -> {
try {
Thread.sleep(timeout + 2000);
Thread.sleep(timeout);
} catch (InterruptedException e) {
}
throw new RuntimeException(new IOException("fucked up"));
@@ -122,9 +122,9 @@ public class TestMeterReading {
RxJavaPlugins.setErrorHandler(errorHandler);
MeterValueListener changeListener = Mockito.mock(MeterValueListener.class);
meter.addValueChangeListener(changeListener);
Disposable disposable = meter.readValues(5000, Executors.newScheduledThreadPool(2), period);
Disposable disposable = meter.readValues(timeout / 2, Executors.newScheduledThreadPool(2), period);
try {
verify(changeListener, after(timeout + 3000).times(1)).errorOccurred(any(TimeoutException.class));
verify(changeListener, timeout(timeout)).errorOccurred(any(TimeoutException.class));
verifyNoMoreInteractions(errorHandler);
} finally {
disposable.dispose();