Search in sources :

Example 16 with Worker

use of com.uber.cadence.worker.Worker in project cadence-client by uber-java.

the class WorkflowTestingTest method testActivityFailure.

@Test
public void testActivityFailure() {
    Worker worker = testEnvironment.newWorker(TASK_LIST);
    worker.registerWorkflowImplementationTypes(ActivityWorkflow.class);
    worker.registerActivitiesImplementations(new FailingActivityImpl());
    worker.start();
    WorkflowClient client = testEnvironment.newWorkflowClient();
    TestWorkflow workflow = client.newWorkflowStub(TestWorkflow.class);
    try {
        workflow.workflow1("input1");
        fail("unreacheable");
    } catch (WorkflowException e) {
        assertEquals("TestActivity::activity1-input1", e.getCause().getCause().getMessage());
    }
}
Also used : WorkflowException(com.uber.cadence.client.WorkflowException) Worker(com.uber.cadence.worker.Worker) WorkflowClient(com.uber.cadence.client.WorkflowClient) Test(org.junit.Test)

Example 17 with Worker

use of com.uber.cadence.worker.Worker in project cadence-client by uber-java.

the class WorkflowTestingTest method testWorkflowTimeout.

@Test
public void testWorkflowTimeout() {
    Worker worker = testEnvironment.newWorker(TASK_LIST);
    worker.registerWorkflowImplementationTypes(TimeoutWorkflow.class);
    worker.start();
    WorkflowClient client = testEnvironment.newWorkflowClient();
    WorkflowOptions options = new WorkflowOptions.Builder().setExecutionStartToCloseTimeout(Duration.ofSeconds(1)).build();
    TestWorkflow workflow = client.newWorkflowStub(TestWorkflow.class, options);
    try {
        workflow.workflow1("bar");
        fail("unreacheable");
    } catch (WorkflowException e) {
        assertTrue(e instanceof WorkflowTimedOutException);
        assertEquals(TimeoutType.START_TO_CLOSE, ((WorkflowTimedOutException) e).getTimeoutType());
    }
}
Also used : WorkflowTimedOutException(com.uber.cadence.client.WorkflowTimedOutException) WorkflowException(com.uber.cadence.client.WorkflowException) Worker(com.uber.cadence.worker.Worker) WorkflowClient(com.uber.cadence.client.WorkflowClient) WorkflowOptions(com.uber.cadence.client.WorkflowOptions) Test(org.junit.Test)

Example 18 with Worker

use of com.uber.cadence.worker.Worker in project cadence-client by uber-java.

the class TestWorkflowEnvironmentInternal method newWorker.

@Override
public Worker newWorker(String taskList) {
    Worker result = new Worker(service, testEnvironmentOptions.getDomain(), taskList, new WorkerOptions.Builder().build());
    workers.add(result);
    return result;
}
Also used : Worker(com.uber.cadence.worker.Worker)

Aggregations

Worker (com.uber.cadence.worker.Worker)18 Test (org.junit.Test)16 WorkflowClient (com.uber.cadence.client.WorkflowClient)15 WorkflowException (com.uber.cadence.client.WorkflowException)7 WorkflowExecution (com.uber.cadence.WorkflowExecution)3 WorkflowOptions (com.uber.cadence.client.WorkflowOptions)3 ActivityTimeoutException (com.uber.cadence.workflow.ActivityTimeoutException)3 CancellationException (java.util.concurrent.CancellationException)3 WorkflowStub (com.uber.cadence.client.WorkflowStub)2 GetWorkflowExecutionHistoryRequest (com.uber.cadence.GetWorkflowExecutionHistoryRequest)1 History (com.uber.cadence.History)1 HistoryEvent (com.uber.cadence.HistoryEvent)1 ActivityCancelledException (com.uber.cadence.client.ActivityCancelledException)1 ActivityCompletionClient (com.uber.cadence.client.ActivityCompletionClient)1 ActivityNotExistsException (com.uber.cadence.client.ActivityNotExistsException)1 DuplicateWorkflowException (com.uber.cadence.client.DuplicateWorkflowException)1 WorkflowClientOptions (com.uber.cadence.client.WorkflowClientOptions)1 WorkflowFailureException (com.uber.cadence.client.WorkflowFailureException)1 WorkflowTimedOutException (com.uber.cadence.client.WorkflowTimedOutException)1 DeterministicRunnerTest (com.uber.cadence.internal.sync.DeterministicRunnerTest)1