@Test public void testSetMaxTelemetriesInBatchWithSmallerSizeButLargerThanWhatInBuffer() { MockSender mockSender = new MockSender() .setExpectedNumberOfScheduleSendCalls(0) .setExpectedNumberOfSendNowCalls(1) .setExpectedTelemetriesNumberInScheduleSend(0) .setExpectedTelemetriesNumberInSendNow(3) .setExpectedNumberOfScheduleSendRequests(2); // Create a buffer with max buffer size of 10 and timeout of 10 seconds LimitsEnforcer maxEnforcer = createEnforcerWithCurrentValue(1, 10); LimitsEnforcer sendEnforcer = createEnforcerWithCurrentValue(30); TelemetryBuffer testedBuffer = new TelemetryBuffer(mockSender, maxEnforcer, sendEnforcer); for (int i = 0; i < 2; ++i) { testedBuffer.add("mockTelemetry"); } testedBuffer.setMaxTelemetriesInBatch(3); for (int i = 0; i < 2; ++i) { testedBuffer.add("mockTelemetry"); } mockSender.waitForFinish(1L); }
@Test public void testSetMaxTelemetriesInBatchWithBiggerSize() { MockSender mockSender = new MockSender() .setExpectedNumberOfScheduleSendCalls(0) .setExpectedNumberOfSendNowCalls(1) .setExpectedTelemetriesNumberInScheduleSend(0) .setExpectedTelemetriesNumberInSendNow(11); // Create a buffer with max buffer size of 10 and timeout of 10 seconds LimitsEnforcer maxEnforcer = createEnforcerWithCurrentValue(1, 10); LimitsEnforcer sendEnforcer = createEnforcerWithCurrentValue(30); TelemetryBuffer testedBuffer = new TelemetryBuffer(mockSender, maxEnforcer, sendEnforcer); for (int i = 0; i < 1; ++i) { testedBuffer.add("mockTelemetry"); } testedBuffer.setMaxTelemetriesInBatch(11); for (int i = 0; i < 10; ++i) { testedBuffer.add("mockTelemetry"); } mockSender.waitForFinish(1L); }
@Test public void testSetTransmitBufferTimeoutInSecondsShorterTime() { MockSender mockSender = new MockSender() .setExpectedNumberOfScheduleSendCalls(0) .setExpectedNumberOfSendNowCalls(1) .setExpectedTelemetriesNumberInScheduleSend(0) .setExpectedTelemetriesNumberInSendNow(2); // Create a buffer with max buffer size of 10 and timeout of 10 seconds LimitsEnforcer maxEnforcer = createEnforcerWithCurrentValue(10); LimitsEnforcer sendEnforcer = createEnforcerWithCurrentValue(1, 30); TelemetryBuffer testedBuffer = new TelemetryBuffer(mockSender, maxEnforcer, sendEnforcer); for (int i = 0; i < 2; ++i) { testedBuffer.add("mockTelemetry"); } testedBuffer.setTransmitBufferTimeoutInSeconds(1); mockSender.waitForFinish(1L); }
@Test public void testSetMaxTelemetriesInBatchWithSmallerSize() { MockSender mockSender = new MockSender() .setExpectedNumberOfScheduleSendCalls(0) .setExpectedNumberOfSendNowCalls(1) .setExpectedTelemetriesNumberInScheduleSend(0) .setExpectedTelemetriesNumberInSendNow(2); // Create a buffer with max buffer size of 10 and timeout of 10 seconds LimitsEnforcer maxEnforcer = createEnforcerWithCurrentValue(1, 10); LimitsEnforcer sendEnforcer = createEnforcerWithCurrentValue(30); TelemetryBuffer testedBuffer = new TelemetryBuffer(mockSender, maxEnforcer, sendEnforcer); for (int i = 0; i < 2; ++i) { testedBuffer.add("mockTelemetry"); } testedBuffer.setMaxTelemetriesInBatch(1); mockSender.waitForFinish(1L); }
private void testFlushWithData(int expectedTelemetriesNumberInSendNow) { MockSender mockSender = new MockSender() .setExpectedNumberOfScheduleSendCalls(1) .setExpectedNumberOfSendNowCalls(1) .setExpectedTelemetriesNumberInScheduleSend(0) .setExpectedTelemetriesNumberInSendNow(expectedTelemetriesNumberInSendNow); // Create a buffer with max buffer size of 10 and timeout of 10 seconds LimitsEnforcer maxEnforcer = createEnforcerWithCurrentValue(1, 10); LimitsEnforcer sendEnforcer = createEnforcerWithCurrentValue(1, 3); TelemetryBuffer testedBuffer = new TelemetryBuffer(mockSender, maxEnforcer, sendEnforcer); for (int i = 0; i < expectedTelemetriesNumberInSendNow; ++i) { testedBuffer.add("mockTelemetry"); } testedBuffer.flush(); mockSender.waitForFinish(6L); }
@Test public void testSendBufferAfterTimeoutExpires() throws Exception { MockSender mockSender = new MockSender() .setExpectedNumberOfScheduleSendCalls(1) .setExpectedNumberOfSendNowCalls(0) .setExpectedTelemetriesNumberInScheduleSend(1) .setExpectedTelemetriesNumberInSendNow(1); // Create a buffer with max buffer size of 10 and timeout of 10 seconds LimitsEnforcer maxEnforcer = createEnforcerWithCurrentValue(10); LimitsEnforcer sendEnforcer = createEnforcerWithCurrentValue(3); TelemetryBuffer testedBuffer = new TelemetryBuffer(mockSender, maxEnforcer, sendEnforcer); for (int i = 0; i < 1; ++i) { testedBuffer.add("mockTelemetry"); } mockSender.waitForFinish(6L); }
@Test public void testSendBufferAfterTimeoutExpiresButBufferWasAlreadySent() throws Exception { MockSender mockSender = new MockSender() .setExpectedNumberOfScheduleSendCalls(1) .setExpectedNumberOfSendNowCalls(1) .setExpectedTelemetriesNumberInScheduleSend(0) .setExpectedTelemetriesNumberInSendNow(10); // Create a buffer with max buffer size of 10 and timeout of 10 seconds LimitsEnforcer maxEnforcer = createEnforcerWithCurrentValue(10); LimitsEnforcer sendEnforcer = createEnforcerWithCurrentValue(3); TelemetryBuffer testedBuffer = new TelemetryBuffer(mockSender, maxEnforcer, sendEnforcer); for (int i = 0; i < 10; ++i) { testedBuffer.add("mockTelemetry"); } mockSender.waitForFinish(6L); }