@SuppressWarnings("unchecked") @Before public void setup() { MockitoAnnotations.initMocks(this); AnalyticsContext mockContext = new AnalyticsContextBuilder() .withSdkInfo(SDK_NAME, SDK_VERSION) .withUniqueIdValue(UNIQUE_ID) .withERSClient(mockErs) .withConfiguration(mockConfig) .build(); when( mockConfig.optLong(DefaultDeliveryClient.KEY_MAX_SUBMISSION_SIZE, DefaultDeliveryClient.DEFAULT_MAX_SUBMISSION_SIZE)).thenReturn( DefaultDeliveryClient.DEFAULT_MAX_SUBMISSION_SIZE); when(mockEventQueue.remainingCapacity()).thenReturn(2); when(mockEventExecutor.getQueue()).thenReturn(mockEventQueue); when( mockConfig.optInt(DefaultDeliveryClient.KEY_MAX_SUBMISSIONS_ALLOWED, DefaultDeliveryClient.DEFAULT_MAX_SUBMISSIONS_ALLOWED)).thenReturn( DefaultDeliveryClient.DEFAULT_MAX_SUBMISSIONS_ALLOWED); when(mockRequest.getRequestClientOptions()).thenReturn(new RequestClientOptions()); when(mockRequestBuilder.createRecordEventsRequest(any(JSONArray.class), any(String.class))) .thenReturn(mockRequest); target = new DefaultDeliveryClient(mockContext, mockFactory, mockEventExecutor, mockSubmissionExecutor, mockRequestBuilder, mockEventStore, mockAdapter); }
@Test public void test() { RequestClientOptions opts = new RequestClientOptions(); for (Marker m : Marker.values()) { assertNull(opts.getClientMarker(m)); } for (Marker m : Marker.values()) { opts.putClientMarker(m, m.name()); } for (Marker m : Marker.values()) { assertEquals(m.name(), opts.getClientMarker(m)); } assertEquals(Marker.USER_AGENT.name(), opts.getClientMarker()); opts.addClientMarker("2nd-agent"); String ua = opts.getClientMarker(); assertEquals(ua, Marker.USER_AGENT.name() + " 2nd-agent", ua); opts.appendUserAgent("3rd-agent"); ua = opts.getClientMarker(); assertEquals(ua, Marker.USER_AGENT.name() + " 2nd-agent 3rd-agent", ua); assertEquals(ua, opts.getClientMarker(Marker.USER_AGENT)); } }