private Task createMockTask(String type) { Task mock = EasyMock.createMock(Task.class); EasyMock.expect(mock.getType()).andReturn(type).anyTimes(); EasyMock.replay(mock); return mock; }
private static LoadQueuePeon createEmptyPeon() { final LoadQueuePeon mockPeon = EasyMock.createMock(LoadQueuePeon.class); EasyMock.expect(mockPeon.getSegmentsToLoad()).andReturn(new HashSet<>()).anyTimes(); EasyMock.expect(mockPeon.getSegmentsMarkedToDrop()).andReturn(new HashSet<>()).anyTimes(); EasyMock.expect(mockPeon.getLoadQueueSize()).andReturn(0L).anyTimes(); EasyMock.expect(mockPeon.getNumberOfSegmentsInQueue()).andReturn(0).anyTimes(); return mockPeon; }
private static LoadQueuePeon createLoadingPeon(List<DataSegment> segments) { final Set<DataSegment> segs = ImmutableSet.copyOf(segments); final long loadingSize = segs.stream().mapToLong(DataSegment::getSize).sum(); final LoadQueuePeon mockPeon = EasyMock.createMock(LoadQueuePeon.class); EasyMock.expect(mockPeon.getSegmentsToLoad()).andReturn(segs).anyTimes(); EasyMock.expect(mockPeon.getSegmentsMarkedToDrop()).andReturn(new HashSet<>()).anyTimes(); EasyMock.expect(mockPeon.getLoadQueueSize()).andReturn(loadingSize).anyTimes(); EasyMock.expect(mockPeon.getNumberOfSegmentsInQueue()).andReturn(segs.size()).anyTimes(); return mockPeon; } }
@Test public void testRewriteURI() { DruidLeaderClient druidLeaderClient = EasyMock.createMock(DruidLeaderClient.class); EasyMock.expect(druidLeaderClient.findCurrentLeader()).andReturn("https://overlord:port"); HttpServletRequest request = EasyMock.createMock(HttpServletRequest.class); EasyMock.expect(request.getQueryString()).andReturn("param1=test¶m2=test2").anyTimes(); // %3A is a colon; test to make sure urlencoded paths work right. EasyMock.expect(request.getRequestURI()).andReturn("/druid/over%3Alord/worker").anyTimes(); EasyMock.replay(druidLeaderClient, request); URI uri = URI.create(new OverlordProxyServlet(druidLeaderClient, null, null).rewriteTarget(request)); Assert.assertEquals("https://overlord:port/druid/over%3Alord/worker?param1=test¶m2=test2", uri.toString()); }
@Test public void testGetEmitter() { ComposingEmitterConfig config = EasyMock.createMock(ComposingEmitterConfig.class); EasyMock.expect(config.getEmitters()).andReturn(Collections.singletonList(testEmitterType)).anyTimes(); Injector injector = EasyMock.createMock(Injector.class); EasyMock.expect(injector.getInstance(Key.get(Emitter.class, Names.named(testEmitterType)))).andReturn(emitter); EasyMock.replay(config, injector); Emitter composingEmitter = new ComposingEmitterModule().getEmitter(config, injector); composingEmitter.start(); EasyMock.verify(config, emitter, injector); }
@Test public void testGoodQuery() throws IOException { EasyMock.expect(testServletRequest.getAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED)) .andReturn(null) .anyTimes(); EasyMock.expect(testServletRequest.getAttribute(AuthConfig.DRUID_ALLOW_UNSECURED_PATH)).andReturn(null).anyTimes(); EasyMock.expect(testServletRequest.getAttribute(AuthConfig.DRUID_AUTHENTICATION_RESULT)) .andReturn(authenticationResult) .anyTimes(); testServletRequest.setAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED, true); EasyMock.expectLastCall().anyTimes(); EasyMock.replay(testServletRequest); Response response = queryResource.doPost( new ByteArrayInputStream(simpleTimeSeriesQuery.getBytes("UTF-8")), null /*pretty*/, testServletRequest ); Assert.assertNotNull(response); }
private ImmutableWorkerInfo createMockWorker(int currCapacityUsed, boolean canRunTask, boolean isValidVersion) { ImmutableWorkerInfo worker = EasyMock.createMock(ImmutableWorkerInfo.class); EasyMock.expect(worker.canRunTask(EasyMock.anyObject(Task.class))).andReturn(canRunTask).anyTimes(); EasyMock.expect(worker.getCurrCapacityUsed()).andReturn(currCapacityUsed).anyTimes(); EasyMock.expect(worker.isValidVersion(EasyMock.anyString())).andReturn(isValidVersion).anyTimes(); EasyMock.replay(worker); return worker; }
private StorageLocation fakeLocation(long total, long free, long max, Double percent) { File file = EasyMock.mock(File.class); EasyMock.expect(file.getTotalSpace()).andReturn(total).anyTimes(); EasyMock.expect(file.getFreeSpace()).andReturn(free).anyTimes(); EasyMock.replay(file); return new StorageLocation(file, max, percent); }
private void expectAuthorizationTokenCheck() { AuthenticationResult authenticationResult = new AuthenticationResult("druid", "druid", null, null); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_ALLOW_UNSECURED_PATH)).andReturn(null).anyTimes(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED)).andReturn(null).atLeastOnce(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHENTICATION_RESULT)) .andReturn(authenticationResult) .atLeastOnce(); req.setAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED, false); EasyMock.expectLastCall().anyTimes(); req.setAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED, true); EasyMock.expectLastCall().anyTimes(); }
private static ShardSpec shardSpec(String dimension, boolean contained) { ShardSpec shard = EasyMock.createMock(ShardSpec.class); EasyMock.expect(shard.getDomainDimensions()) .andReturn(ImmutableList.of(dimension)) .anyTimes(); EasyMock.expect(shard.possibleInDomain(EasyMock.anyObject())) .andReturn(contained) .anyTimes(); return shard; } }
private void mockEmptyPeon() { EasyMock.expect(mockPeon.getSegmentsToLoad()).andReturn(new HashSet<>()).anyTimes(); EasyMock.expect(mockPeon.getSegmentsMarkedToDrop()).andReturn(new HashSet<>()).anyTimes(); EasyMock.expect(mockPeon.getLoadQueueSize()).andReturn(0L).atLeastOnce(); EasyMock.expect(mockPeon.getNumberOfSegmentsInQueue()).andReturn(0).anyTimes(); EasyMock.replay(mockPeon); }
private void setUpRequestExpectations(String producerId, String producerSequenceValue) { EasyMock.reset(req); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED)) .andReturn(null) .anyTimes(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_ALLOW_UNSECURED_PATH)).andReturn(null).anyTimes(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHENTICATION_RESULT)) .andReturn(AllowAllAuthenticator.ALLOW_ALL_RESULT) .anyTimes(); req.setAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED, true); EasyMock.expectLastCall().anyTimes(); EasyMock.expect(req.getContentType()).andReturn("application/json"); EasyMock.expect(req.getHeader("X-Firehose-Producer-Id")).andReturn(producerId); if (producerId != null) { EasyMock.expect(req.getHeader("X-Firehose-Producer-Seq")).andReturn(producerSequenceValue); } EasyMock.replay(req); } }
@Test public void testShutdownAllTasksForNonExistingDataSource() { final TaskQueue taskQueue = EasyMock.createMock(TaskQueue.class); EasyMock.expect(taskMaster.isLeader()).andReturn(true).anyTimes(); EasyMock.expect(taskMaster.getTaskQueue()).andReturn(Optional.of(taskQueue)).anyTimes(); EasyMock.expect(taskStorageQueryAdapter.getActiveTaskInfo(EasyMock.anyString())).andReturn(Collections.emptyList()); EasyMock.replay(taskRunner, taskMaster, taskStorageQueryAdapter, indexerMetadataStorageAdapter, req); final Response response = overlordResource.shutdownTasksForDataSource("notExisting"); Assert.assertEquals(Status.NOT_FOUND.getStatusCode(), response.getStatus()); }
@Test(timeout = 60_000L) public void testShutdownWithPrevTime() throws Exception { EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED)) .andReturn(null) .anyTimes(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_ALLOW_UNSECURED_PATH)).andReturn(null).anyTimes(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHENTICATION_RESULT)) .andReturn(AllowAllAuthenticator.ALLOW_ALL_RESULT) .anyTimes(); req.setAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED, true); EasyMock.expectLastCall().anyTimes(); EasyMock.replay(req); firehose.shutdown(DateTimes.nowUtc().minusMinutes(2).toString(), req); while (!firehose.isClosed()) { Thread.sleep(50); } }
@Test(timeout = 60_000L) public void testShutdown() throws Exception { EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED)) .andReturn(null) .anyTimes(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_ALLOW_UNSECURED_PATH)).andReturn(null).anyTimes(); EasyMock.expect(req.getAttribute(AuthConfig.DRUID_AUTHENTICATION_RESULT)) .andReturn(AllowAllAuthenticator.ALLOW_ALL_RESULT) .anyTimes(); req.setAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED, true); EasyMock.expectLastCall().anyTimes(); EasyMock.replay(req); firehose.shutdown(DateTimes.nowUtc().plusMillis(100).toString(), req); while (!firehose.isClosed()) { Thread.sleep(50); } }
@Test public void testGetRedirectURL() { String query = "foo=bar&x=y"; String request = "/request"; EasyMock.expect(druidCoordinator.getCurrentLeader()).andReturn("http://localhost").anyTimes(); EasyMock.replay(druidCoordinator); URL url = coordinatorRedirectInfo.getRedirectURL(query, request); Assert.assertEquals("http://localhost/request?foo=bar&x=y", url.toString()); EasyMock.verify(druidCoordinator); } }
private static MemcachedNode dummyNode(String host, int port) { SocketAddress address = InetSocketAddress.createUnresolved(host, port); MemcachedNode node = EasyMock.createNiceMock(MemcachedNode.class); EasyMock.expect(node.getSocketAddress()).andReturn(address).anyTimes(); EasyMock.replay(node); return node; } }
@Test public void testGetRedirectURL() { String host = "http://localhost"; String query = "foo=bar&x=y"; String request = "/request"; EasyMock.expect(taskMaster.getCurrentLeader()).andReturn(host).anyTimes(); EasyMock.replay(taskMaster); URL url = redirectInfo.getRedirectURL(query, request); Assert.assertEquals("http://localhost/request?foo=bar&x=y", url.toString()); EasyMock.verify(taskMaster); }