use of org.apache.sling.commons.scheduler.Scheduler in project sling by apache.
the class RemoteEventDistributionTriggerTest method testUnregister.
@Test
public void testUnregister() throws Exception {
String endpoint = "";
DistributionTransportSecretProvider distributionTransportSecretProvider = mock(DistributionTransportSecretProvider.class);
Scheduler scheduler = mock(Scheduler.class);
RemoteEventDistributionTrigger remoteEventdistributionTrigger = new RemoteEventDistributionTrigger(endpoint, distributionTransportSecretProvider, scheduler);
DistributionRequestHandler handler = mock(DistributionRequestHandler.class);
remoteEventdistributionTrigger.unregister(handler);
}
use of org.apache.sling.commons.scheduler.Scheduler in project sling by apache.
the class RemoteEventDistributionTriggerTest method testRegister.
@Test
public void testRegister() throws Exception {
DistributionRequestHandler handler = mock(DistributionRequestHandler.class);
String endpoint = "";
DistributionTransportSecretProvider distributionTransportSecretProvider = mock(DistributionTransportSecretProvider.class);
Scheduler scheduler = mock(Scheduler.class);
ScheduleOptions options = mock(ScheduleOptions.class);
when(options.name(handler.toString())).thenReturn(options);
when(scheduler.NOW()).thenReturn(options);
RemoteEventDistributionTrigger remoteEventdistributionTrigger = new RemoteEventDistributionTrigger(endpoint, distributionTransportSecretProvider, scheduler);
remoteEventdistributionTrigger.register(handler);
}
use of org.apache.sling.commons.scheduler.Scheduler in project sling by apache.
the class SimpleDistributionQueueProviderTest method testEnableQueueProcessingWithCheckpointRecovery.
@Test
public void testEnableQueueProcessingWithCheckpointRecovery() throws Exception {
File checkpointDirectory = new File("dummy-agent-simple-queues-checkpoints");
File file = new File(getClass().getResource("/dummy-agent-checkpoint").getFile());
FileUtils.copyFileToDirectory(file, checkpointDirectory);
Scheduler scheduler = mock(Scheduler.class);
ScheduleOptions options = mock(ScheduleOptions.class);
when(scheduler.NOW(-1, 1)).thenReturn(options);
when(scheduler.NOW(-1, 15)).thenReturn(options);
when(options.canRunConcurrently(false)).thenReturn(options);
when(options.name(any(String.class))).thenReturn(options);
String name = "dummy-agent";
try {
SimpleDistributionQueueProvider simpledistributionQueueProvider = new SimpleDistributionQueueProvider(scheduler, name, true);
DistributionQueueProcessor processor = mock(DistributionQueueProcessor.class);
simpledistributionQueueProvider.enableQueueProcessing(processor, name);
DistributionQueue queue = simpledistributionQueueProvider.getQueue(name);
assertNotNull(queue);
assertEquals(1, queue.getStatus().getItemsCount());
DistributionQueueEntry head = queue.getHead();
assertNotNull(head);
DistributionQueueItem item = head.getItem();
assertNotNull(item);
String packageId = item.getPackageId();
assertNotNull(packageId);
assertEquals("DSTRQ1", item.get("internal.request.id"));
assertArrayEquals(new String[] { "/foo", "bar" }, (String[]) item.get("request.paths"));
assertArrayEquals(new String[] { "/foo" }, (String[]) item.get("request.deepPaths"));
assertEquals("admin", item.get("internal.request.user"));
assertEquals("ADD", item.get("request.type"));
assertEquals("default", item.get("package.type"));
assertEquals("1464090250095", item.get("internal.request.startTime"));
} finally {
FileUtils.deleteDirectory(new File(name + "-simple-queues-checkpoints"));
}
}
use of org.apache.sling.commons.scheduler.Scheduler in project sling by apache.
the class SimpleDistributionQueueProviderTest method testDisableQueueProcessing.
@Test
public void testDisableQueueProcessing() throws Exception {
Scheduler scheduler = mock(Scheduler.class);
ScheduleOptions options = mock(ScheduleOptions.class);
when(scheduler.NOW(-1, 10)).thenReturn(options);
when(options.canRunConcurrently(false)).thenReturn(options);
when(options.name(any(String.class))).thenReturn(options);
SimpleDistributionQueueProvider simpledistributionQueueProvider = new SimpleDistributionQueueProvider(scheduler, "dummy-agent", false);
simpledistributionQueueProvider.disableQueueProcessing();
}
use of org.apache.sling.commons.scheduler.Scheduler in project sling by apache.
the class PersistingJcrEventDistributionTriggerTest method testProcessEventWithPrivileges.
@Test
public void testProcessEventWithPrivileges() throws Exception {
String nuggetsPath = "/var/nuggets";
String serviceName = "serviceId";
Session session = mock(Session.class);
when(session.nodeExists("/var/nuggets")).thenReturn(true);
Workspace workspace = mock(Workspace.class);
ObservationManager observationManager = mock(ObservationManager.class);
when(workspace.getObservationManager()).thenReturn(observationManager);
when(session.getWorkspace()).thenReturn(workspace);
when(session.hasPermission(nuggetsPath, Session.ACTION_ADD_NODE)).thenReturn(true);
SlingRepository repository = mock(SlingRepository.class);
Scheduler scheduler = mock(Scheduler.class);
ResourceResolverFactory resolverFactory = mock(ResourceResolverFactory.class);
when(repository.loginService(serviceName, null)).thenReturn(session);
String path = "/some/path";
PersistedJcrEventDistributionTrigger persistingJcrEventdistributionTrigger = new PersistedJcrEventDistributionTrigger(repository, scheduler, resolverFactory, path, serviceName, nuggetsPath);
DistributionRequestHandler handler = mock(DistributionRequestHandler.class);
persistingJcrEventdistributionTrigger.register(handler);
Node nuggetsNode = mock(Node.class);
Node eventNode = mock(Node.class);
when(nuggetsNode.addNode(any(String.class), any(String.class))).thenReturn(eventNode);
when(session.getNode(nuggetsPath)).thenReturn(nuggetsNode);
Event event = mock(Event.class);
when(event.getPath()).thenReturn("/some/path/generating/event");
DistributionRequest distributionRequest = persistingJcrEventdistributionTrigger.processEvent(event);
assertNotNull(distributionRequest);
}
Aggregations