Search in sources :

Example 16 with Result

use of org.apache.sling.hc.api.Result in project sling by apache.

the class HealthCheckExecutorSelectionIT method registerHC.

private void registerHC(final String... tags) {
    final HealthCheck hc = new HealthCheck() {

        @Override
        public Result execute() {
            return new Result(Result.Status.OK, "All good for " + tags[0]);
        }
    };
    final Dictionary<String, Object> props = new Hashtable<String, Object>();
    props.put(HealthCheck.NAME, "name_" + tags[0]);
    props.put(HealthCheck.TAGS, tags);
    regs.add(bundleContext.registerService(HealthCheck.class.getName(), hc, props));
}
Also used : Hashtable(java.util.Hashtable) HealthCheck(org.apache.sling.hc.api.HealthCheck) Result(org.apache.sling.hc.api.Result)

Example 17 with Result

use of org.apache.sling.hc.api.Result in project sling by apache.

the class DistributionQueueHealthCheckTest method testWithNoItemInTheQueue.

@Test
public void testWithNoItemInTheQueue() throws Exception {
    DistributionQueueHealthCheck distributionQueueHealthCheck = new DistributionQueueHealthCheck();
    distributionQueueHealthCheck.activate(Collections.<String, Object>emptyMap());
    DistributionQueue queue = mock(DistributionQueue.class);
    when(queue.getHead()).thenReturn(null);
    DistributionAgent distributionAgent = mock(DistributionAgent.class);
    List<String> queues = new ArrayList<String>();
    queues.add("queueName");
    when(distributionAgent.getQueueNames()).thenReturn(queues);
    when(distributionAgent.getQueue(anyString())).thenReturn(queue);
    distributionQueueHealthCheck.bindDistributionAgent(distributionAgent);
    Result result = distributionQueueHealthCheck.execute();
    assertNotNull(result);
    assertTrue(result.isOk());
}
Also used : DistributionAgent(org.apache.sling.distribution.agent.DistributionAgent) DistributionQueue(org.apache.sling.distribution.queue.DistributionQueue) ArrayList(java.util.ArrayList) Matchers.anyString(org.mockito.Matchers.anyString) Result(org.apache.sling.hc.api.Result) Test(org.junit.Test)

Example 18 with Result

use of org.apache.sling.hc.api.Result in project sling by apache.

the class DistributionQueueHealthCheckTest method testWithNoDistributionQueueProvider.

@Test
public void testWithNoDistributionQueueProvider() throws Exception {
    DistributionQueueHealthCheck distributionQueueHealthCheck = new DistributionQueueHealthCheck();
    distributionQueueHealthCheck.activate(Collections.<String, Object>emptyMap());
    Result result = distributionQueueHealthCheck.execute();
    assertNotNull(result);
    assertTrue(result.isOk());
}
Also used : Result(org.apache.sling.hc.api.Result) Test(org.junit.Test)

Example 19 with Result

use of org.apache.sling.hc.api.Result in project sling by apache.

the class DistributionQueueHealthCheckTest method testWithOneOkItemInTheQueue.

@Test
public void testWithOneOkItemInTheQueue() throws Exception {
    DistributionQueueHealthCheck distributionQueueHealthCheck = new DistributionQueueHealthCheck();
    distributionQueueHealthCheck.activate(Collections.<String, Object>emptyMap());
    DistributionQueue queue = mock(DistributionQueue.class);
    DistributionQueueItem item = mock(DistributionQueueItem.class);
    DistributionQueueItemStatus status = mock(DistributionQueueItemStatus.class);
    when(status.getAttempts()).thenReturn(1);
    when(queue.getItem(any(String.class))).thenReturn(new DistributionQueueEntry(null, item, status));
    when(queue.getHead()).thenReturn(new DistributionQueueEntry(null, item, status));
    DistributionAgent distributionAgent = mock(DistributionAgent.class);
    List<String> queues = new ArrayList<String>();
    queues.add("queueName");
    when(distributionAgent.getQueueNames()).thenReturn(queues);
    when(distributionAgent.getQueue(anyString())).thenReturn(queue);
    distributionQueueHealthCheck.bindDistributionAgent(distributionAgent);
    Result result = distributionQueueHealthCheck.execute();
    assertNotNull(result);
    assertTrue(result.isOk());
}
Also used : DistributionAgent(org.apache.sling.distribution.agent.DistributionAgent) DistributionQueueItemStatus(org.apache.sling.distribution.queue.DistributionQueueItemStatus) DistributionQueue(org.apache.sling.distribution.queue.DistributionQueue) DistributionQueueEntry(org.apache.sling.distribution.queue.DistributionQueueEntry) ArrayList(java.util.ArrayList) Matchers.anyString(org.mockito.Matchers.anyString) DistributionQueueItem(org.apache.sling.distribution.queue.DistributionQueueItem) Result(org.apache.sling.hc.api.Result) Test(org.junit.Test)

Example 20 with Result

use of org.apache.sling.hc.api.Result in project sling by apache.

the class JUnitHealthCheck method execute.

public Result execute() {
    final String extension = "json";
    final FormattingResultLog resultLog = new FormattingResultLog();
    final CustomRunListener listener = new CustomRunListener(resultLog);
    final Renderer r = new CustomRenderer(listener, extension, resultLog);
    final Collection<String> testNames = testsManager.getTestNames(testSelector);
    if (testNames.isEmpty()) {
        resultLog.warn("No tests found for selector {}", testSelector);
    } else {
        try {
            testsManager.executeTests(testNames, r, testSelector);
            if (listener.nTests == 0) {
                resultLog.warn("No tests executed by {}", testSelector);
            }
        } catch (Exception e) {
            resultLog.warn("Exception while executing tests (" + testSelector + ")" + e);
        }
    }
    return new Result(resultLog);
}
Also used : FormattingResultLog(org.apache.sling.hc.util.FormattingResultLog) Renderer(org.apache.sling.junit.Renderer) IOException(java.io.IOException) UnsupportedEncodingException(java.io.UnsupportedEncodingException) Result(org.apache.sling.hc.api.Result)

Aggregations

Result (org.apache.sling.hc.api.Result)50 HealthCheckExecutionResult (org.apache.sling.hc.api.execution.HealthCheckExecutionResult)25 Test (org.junit.Test)19 FormattingResultLog (org.apache.sling.hc.util.FormattingResultLog)16 HealthCheckExecutionOptions (org.apache.sling.hc.api.execution.HealthCheckExecutionOptions)9 ExecutionResult (org.apache.sling.hc.core.impl.executor.ExecutionResult)9 ArrayList (java.util.ArrayList)8 HealthCheckMetadata (org.apache.sling.hc.util.HealthCheckMetadata)8 Matchers.anyString (org.mockito.Matchers.anyString)8 Date (java.util.Date)7 ServiceReference (org.osgi.framework.ServiceReference)6 HealthCheck (org.apache.sling.hc.api.HealthCheck)5 HealthCheckSelector (org.apache.sling.hc.api.execution.HealthCheckSelector)5 Hashtable (java.util.Hashtable)4 DistributionAgent (org.apache.sling.distribution.agent.DistributionAgent)4 DistributionQueue (org.apache.sling.distribution.queue.DistributionQueue)4 SimpleDateFormat (java.text.SimpleDateFormat)3 HashSet (java.util.HashSet)3 ObjectName (javax.management.ObjectName)3 DistributionQueueEntry (org.apache.sling.distribution.queue.DistributionQueueEntry)3