@Test(expected = NullPointerException.class) public void testCtorWithNullTelemetrySerializer() { TransmissionDispatcher mockDispatcher = Mockito.mock(TransmissionDispatcher.class); TransmissionsLoader mockLoader = Mockito.mock(TransmissionsLoader.class); new TransmitterImpl(mockDispatcher, null, mockLoader); }
@Test public void testValidCtor() { TransmitterImpl transmitter = null; try { TransmissionDispatcher mockDispatcher = Mockito.mock(TransmissionDispatcher.class); TelemetrySerializer mockSerializer = Mockito.mock(TelemetrySerializer.class); TransmissionsLoader mockLoader = Mockito.mock(TransmissionsLoader.class); transmitter = new TransmitterImpl(mockDispatcher, mockSerializer, mockLoader); Mockito.verify(mockLoader, Mockito.times(1)).load(anyBoolean()); } finally { if (transmitter != null) { transmitter.stop(1L, TimeUnit.SECONDS); } } }
Mockito.doReturn(mockSerialize).when(mockSerializer).serialize(asJsons); transmitter = new TransmitterImpl(mockDispatcher, mockSerializer, mockLoader); transmitter.sendNow(asJsons); Thread.sleep(100); } finally { if (transmitter != null) { transmitter.stop(1L, TimeUnit.SECONDS);
Mockito.doReturn(asJsons).when(mockFetcher).fetch(); transmitter = new TransmitterImpl(mockDispatcher, mockSerializer, mockLoader); transmitter.scheduleSend(mockFetcher, 100L, TimeUnit.MICROSECONDS); Thread.sleep(100); } finally { if (transmitter != null) { transmitter.stop(1L, TimeUnit.SECONDS);
@Test(expected = NullPointerException.class) public void testCtorWithNullTransmissionsLoader() { TransmissionDispatcher mockDispatcher = Mockito.mock(TransmissionDispatcher.class); TelemetrySerializer mockSerializer = Mockito.mock(TelemetrySerializer.class); new TransmitterImpl(mockDispatcher, mockSerializer, null); }
@Test(expected = NullPointerException.class) public void testCtorWithNullTransmissionDispatcher() { TelemetrySerializer mockSerializer = Mockito.mock(TelemetrySerializer.class); TransmissionsLoader mockLoader = Mockito.mock(TransmissionsLoader.class); new TransmitterImpl(null, mockSerializer, mockLoader); }
@Override public TelemetriesTransmitter create(String endpoint, String maxTransmissionStorageCapacity, boolean throttlingIsEnabled, int maxInstanceRetries) { // An active object with the network sender TransmissionOutput actualNetworkSender = TestThreadLocalData.getTransmissionOutput(); final TransmissionPolicyManager transmissionPolicyManager = new TransmissionPolicyManager(throttlingIsEnabled); transmissionPolicyManager.addTransmissionHandler(new ErrorHandler(transmissionPolicyManager)); transmissionPolicyManager.addTransmissionHandler(new PartialSuccessHandler(transmissionPolicyManager)); transmissionPolicyManager.addTransmissionHandler(new ThrottlingHandler(transmissionPolicyManager)); transmissionPolicyManager.setMaxInstantRetries(maxInstanceRetries); TransmissionPolicyStateFetcher stateFetcher = transmissionPolicyManager.getTransmissionPolicyState(); TransmissionOutput networkSender = new ActiveTransmissionNetworkOutput(actualNetworkSender, stateFetcher); // An active object with the file system sender TransmissionFileSystemOutput fileSystemSender = new TransmissionFileSystemOutput(); TransmissionOutput activeFileSystemOutput = new ActiveTransmissionFileSystemOutput(fileSystemSender, stateFetcher); // The dispatcher works with the two active senders TransmissionDispatcher dispatcher = new NonBlockingDispatcher(new TransmissionOutput[] {networkSender, activeFileSystemOutput}); // The loader works with the file system loader as the active one does TransmissionsLoader transmissionsLoader = new ActiveTransmissionLoader(fileSystemSender, stateFetcher, dispatcher); // The Transmitter manage all TelemetriesTransmitter telemetriesTransmitter = new TransmitterImpl(dispatcher, new GzipTelemetrySerializer(), transmissionsLoader); return telemetriesTransmitter; } }
TelemetriesTransmitter<String> telemetriesTransmitter = new TransmitterImpl(dispatcher, new GzipTelemetrySerializer(), transmissionsLoader);