diff --git a/src/main/java/com/uber/cadence/serviceclient/WorkflowServiceTChannel.java b/src/main/java/com/uber/cadence/serviceclient/WorkflowServiceTChannel.java index d3ac4f1e5..2878e6fac 100644 --- a/src/main/java/com/uber/cadence/serviceclient/WorkflowServiceTChannel.java +++ b/src/main/java/com/uber/cadence/serviceclient/WorkflowServiceTChannel.java @@ -506,6 +506,9 @@ private UpdateDomainResponse updateDomain(UpdateDomainRequest updateRequest) thr if (result.isSetDomainNotActiveError()) { throw result.getDomainNotActiveError(); } + if (result.isSetClientVersionNotSupportedError()) { + throw result.getClientVersionNotSupportedError(); + } throw new TException("UpdateDomain failed with unknown error:" + result); } finally { if (response != null) { @@ -551,6 +554,9 @@ private void deprecateDomain(DeprecateDomainRequest deprecateRequest) throws TEx if (result.isSetDomainNotActiveError()) { throw result.getDomainNotActiveError(); } + if (result.isSetClientVersionNotSupportedError()) { + throw result.getClientVersionNotSupportedError(); + } throw new TException("DeprecateDomain failed with unknown error:" + result); } finally { if (response != null) { @@ -2102,6 +2108,9 @@ private QueryWorkflowResponse queryWorkflow(QueryWorkflowRequest queryRequest) t if (result.isSetQueryFailedError()) { throw result.getQueryFailedError(); } + if (result.isSetLimitExceededError()) { + throw result.getLimitExceededError(); + } if (result.isSetClientVersionNotSupportedError()) { throw result.getClientVersionNotSupportedError(); } diff --git a/src/test/java/com/uber/cadence/serviceclient/ClientOptionsTest.java b/src/test/java/com/uber/cadence/serviceclient/ClientOptionsTest.java new file mode 100644 index 000000000..3f5d4e83c --- /dev/null +++ b/src/test/java/com/uber/cadence/serviceclient/ClientOptionsTest.java @@ -0,0 +1,60 @@ +/** + * Copyright 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + *

Modifications copyright (C) 2017 Uber Technologies, Inc. + * + *

Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file + * except in compliance with the License. A copy of the License is located at + * + *

http://aws.amazon.com/apache2.0 + * + *

or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the + * specific language governing permissions and limitations under the License. + */ +package com.uber.cadence.serviceclient; + +import com.uber.cadence.serviceclient.auth.OAuthAuthorizationProvider; +import com.uber.m3.tally.NoopScope; +import com.uber.m3.tally.Scope; +import io.grpc.*; +import java.util.Collections; +import java.util.concurrent.TimeUnit; +import junit.framework.TestCase; + +public class ClientOptionsTest extends TestCase { + + public void testBuilderWithGRPC() { + ManagedChannel channel = + ManagedChannelBuilder.forAddress("localhost", 8080).usePlaintext().build(); + Scope scope = new NoopScope(); + ClientOptions options = + ClientOptions.newBuilder() + .setAuthorizationProvider( + new OAuthAuthorizationProvider( + "clientID", "clientSecret", "https://128.1.1.1", null)) + .setServiceName("serviceName") + .setClientAppName("clientAppName") + .setGRPCChannel(channel) + .setRpcTimeout(TimeUnit.SECONDS.toMillis(10)) + .setRpcLongPollTimeout(TimeUnit.SECONDS.toMillis(10)) + .setQueryRpcTimeout(TimeUnit.SECONDS.toMillis(10)) + .setListArchivedWorkflowRpcTimeout(TimeUnit.SECONDS.toMillis(10)) + .setMetricsScope(scope) + .setTransportHeaders(Collections.singletonMap("transportKey", "value")) + .setHeaders(Collections.singletonMap("key", "value")) + .setIsolationGroup("isolation-group") + .build(); + assertEquals("serviceName", options.getServiceName()); + assertEquals("clientAppName", options.getClientAppName()); + assertEquals(channel, options.getGRPCChannel()); + assertEquals(TimeUnit.SECONDS.toMillis(10), options.getRpcTimeoutMillis()); + assertEquals(TimeUnit.SECONDS.toMillis(10), options.getRpcLongPollTimeoutMillis()); + assertEquals(TimeUnit.SECONDS.toMillis(10), options.getRpcQueryTimeoutMillis()); + assertEquals(TimeUnit.SECONDS.toMillis(10), options.getRpcListArchivedWorkflowTimeoutMillis()); + assertEquals(scope, options.getMetricsScope()); + assertEquals("value", options.getTransportHeaders().get("transportKey")); + assertEquals("value", options.getHeaders().get("key")); + assertEquals("isolation-group", options.getIsolationGroup()); + } +} diff --git a/src/test/java/com/uber/cadence/serviceclient/IWorkflowServiceBaseTest.java b/src/test/java/com/uber/cadence/serviceclient/IWorkflowServiceBaseTest.java index 5e09f0297..de02e485e 100644 --- a/src/test/java/com/uber/cadence/serviceclient/IWorkflowServiceBaseTest.java +++ b/src/test/java/com/uber/cadence/serviceclient/IWorkflowServiceBaseTest.java @@ -27,218 +27,281 @@ public void testGetOptions() { } public void testRegisterDomain() { + assertThrows(UnsupportedOperationException.class, () -> service.RegisterDomain(null)); assertThrows(UnsupportedOperationException.class, () -> service.RegisterDomain(null, null)); } public void testDescribeDomain() { + assertThrows(UnsupportedOperationException.class, () -> service.DescribeDomain(null)); assertThrows(UnsupportedOperationException.class, () -> service.DescribeDomain(null, null)); } public void testListDomains() { + assertThrows(UnsupportedOperationException.class, () -> service.ListDomains(null)); assertThrows(UnsupportedOperationException.class, () -> service.ListDomains(null, null)); } public void testUpdateDomain() { + assertThrows(UnsupportedOperationException.class, () -> service.UpdateDomain(null)); assertThrows(UnsupportedOperationException.class, () -> service.UpdateDomain(null, null)); } public void testDeprecateDomain() { + assertThrows(UnsupportedOperationException.class, () -> service.DeprecateDomain(null)); assertThrows(UnsupportedOperationException.class, () -> service.DeprecateDomain(null, null)); } public void testRestartWorkflowExecution() { + assertThrows(UnsupportedOperationException.class, () -> service.RestartWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.RestartWorkflowExecution(null, null)); } public void testStartWorkflowExecution() { + assertThrows(UnsupportedOperationException.class, () -> service.StartWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.StartWorkflowExecution(null, null)); } public void testStartWorkflowExecutionAsync() { + assertThrows( + UnsupportedOperationException.class, () -> service.StartWorkflowExecutionAsync(null)); assertThrows( UnsupportedOperationException.class, () -> service.StartWorkflowExecutionAsync(null, null)); } public void testGetWorkflowExecutionHistory() { + assertThrows( + UnsupportedOperationException.class, () -> service.GetWorkflowExecutionHistory(null)); assertThrows( UnsupportedOperationException.class, () -> service.GetWorkflowExecutionHistory(null, null)); } public void testPollForDecisionTask() { + assertThrows(UnsupportedOperationException.class, () -> service.PollForDecisionTask(null)); assertThrows( UnsupportedOperationException.class, () -> service.PollForDecisionTask(null, null)); } public void testRespondDecisionTaskCompleted() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondDecisionTaskCompleted(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondDecisionTaskCompleted(null, null)); } public void testRespondDecisionTaskFailed() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondDecisionTaskFailed(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondDecisionTaskFailed(null, null)); } public void testPollForActivityTask() { + assertThrows(UnsupportedOperationException.class, () -> service.PollForActivityTask(null)); assertThrows( UnsupportedOperationException.class, () -> service.PollForActivityTask(null, null)); } public void testRecordActivityTaskHeartbeat() { + assertThrows( + UnsupportedOperationException.class, () -> service.RecordActivityTaskHeartbeat(null)); assertThrows( UnsupportedOperationException.class, () -> service.RecordActivityTaskHeartbeat(null, null)); } public void testRecordActivityTaskHeartbeatByID() { + assertThrows( + UnsupportedOperationException.class, () -> service.RecordActivityTaskHeartbeatByID(null)); assertThrows( UnsupportedOperationException.class, () -> service.RecordActivityTaskHeartbeatByID(null, null)); } public void testRespondActivityTaskCompleted() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondActivityTaskCompleted(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondActivityTaskCompleted(null, null)); } public void testRespondActivityTaskCompletedByID() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondActivityTaskCompletedByID(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondActivityTaskCompletedByID(null, null)); } public void testRespondActivityTaskFailed() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondActivityTaskFailed(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondActivityTaskFailed(null, null)); } public void testRespondActivityTaskFailedByID() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondActivityTaskFailedByID(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondActivityTaskFailedByID(null, null)); } public void testRespondActivityTaskCanceled() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondActivityTaskCanceled(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondActivityTaskCanceled(null, null)); } public void testRespondActivityTaskCanceledByID() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondActivityTaskCanceledByID(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondActivityTaskCanceledByID(null, null)); } public void testRequestCancelWorkflowExecution() { + assertThrows( + UnsupportedOperationException.class, () -> service.RequestCancelWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.RequestCancelWorkflowExecution(null, null)); } public void testSignalWorkflowExecution() { + assertThrows(UnsupportedOperationException.class, () -> service.SignalWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.SignalWorkflowExecution(null, null)); } public void testSignalWithStartWorkflowExecution() { + assertThrows( + UnsupportedOperationException.class, () -> service.SignalWithStartWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.SignalWithStartWorkflowExecution(null, null)); } public void testSignalWithStartWorkflowExecutionAsync() { + assertThrows( + UnsupportedOperationException.class, + () -> service.SignalWithStartWorkflowExecutionAsync(null)); assertThrows( UnsupportedOperationException.class, () -> service.SignalWithStartWorkflowExecutionAsync(null, null)); } public void testResetWorkflowExecution() { + assertThrows(UnsupportedOperationException.class, () -> service.ResetWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.ResetWorkflowExecution(null, null)); } public void testTerminateWorkflowExecution() { + assertThrows( + UnsupportedOperationException.class, () -> service.TerminateWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.TerminateWorkflowExecution(null, null)); } public void testListOpenWorkflowExecutions() { + assertThrows( + UnsupportedOperationException.class, () -> service.ListOpenWorkflowExecutions(null)); assertThrows( UnsupportedOperationException.class, () -> service.ListOpenWorkflowExecutions(null, null)); } public void testListClosedWorkflowExecutions() { + assertThrows( + UnsupportedOperationException.class, () -> service.ListClosedWorkflowExecutions(null)); assertThrows( UnsupportedOperationException.class, () -> service.ListClosedWorkflowExecutions(null, null)); } public void testListWorkflowExecutions() { + assertThrows(UnsupportedOperationException.class, () -> service.ListWorkflowExecutions(null)); assertThrows( UnsupportedOperationException.class, () -> service.ListWorkflowExecutions(null, null)); } public void testListArchivedWorkflowExecutions() { + assertThrows( + UnsupportedOperationException.class, () -> service.ListArchivedWorkflowExecutions(null)); assertThrows( UnsupportedOperationException.class, () -> service.ListArchivedWorkflowExecutions(null, null)); } public void testScanWorkflowExecutions() { + assertThrows(UnsupportedOperationException.class, () -> service.ScanWorkflowExecutions(null)); assertThrows( UnsupportedOperationException.class, () -> service.ScanWorkflowExecutions(null, null)); } public void testCountWorkflowExecutions() { + assertThrows(UnsupportedOperationException.class, () -> service.CountWorkflowExecutions(null)); assertThrows( UnsupportedOperationException.class, () -> service.CountWorkflowExecutions(null, null)); } public void testGetSearchAttributes() { - assertThrows(UnsupportedOperationException.class, () -> service.GetSearchAttributes(null)); + assertThrows(UnsupportedOperationException.class, () -> service.GetSearchAttributes()); } public void testRespondQueryTaskCompleted() { + assertThrows( + UnsupportedOperationException.class, () -> service.RespondQueryTaskCompleted(null)); assertThrows( UnsupportedOperationException.class, () -> service.RespondQueryTaskCompleted(null, null)); } public void testResetStickyTaskList() { + assertThrows(UnsupportedOperationException.class, () -> service.ResetStickyTaskList(null)); assertThrows( UnsupportedOperationException.class, () -> service.ResetStickyTaskList(null, null)); } public void testQueryWorkflow() { + assertThrows(UnsupportedOperationException.class, () -> service.QueryWorkflow(null)); assertThrows(UnsupportedOperationException.class, () -> service.QueryWorkflow(null, null)); } public void testDescribeWorkflowExecution() { + assertThrows( + UnsupportedOperationException.class, () -> service.DescribeWorkflowExecution(null)); assertThrows( UnsupportedOperationException.class, () -> service.DescribeWorkflowExecution(null, null)); } public void testDescribeTaskList() { + assertThrows(UnsupportedOperationException.class, () -> service.DescribeTaskList(null)); assertThrows(UnsupportedOperationException.class, () -> service.DescribeTaskList(null, null)); } public void testGetClusterInfo() { - assertThrows(UnsupportedOperationException.class, () -> service.GetClusterInfo(null)); + assertThrows(UnsupportedOperationException.class, () -> service.GetClusterInfo()); } public void testGetTaskListsByDomain() { + assertThrows(UnsupportedOperationException.class, () -> service.GetTaskListsByDomain(null)); assertThrows( UnsupportedOperationException.class, () -> service.GetTaskListsByDomain(null, null)); } public void testListTaskListPartitions() { + assertThrows(UnsupportedOperationException.class, () -> service.ListTaskListPartitions(null)); assertThrows( UnsupportedOperationException.class, () -> service.ListTaskListPartitions(null, null)); } public void testRefreshWorkflowTasks() { + assertThrows(UnsupportedOperationException.class, () -> service.RefreshWorkflowTasks(null)); assertThrows( UnsupportedOperationException.class, () -> service.RefreshWorkflowTasks(null, null)); } diff --git a/src/test/java/com/uber/cadence/serviceclient/WorkflowServiceTChannelTest.java b/src/test/java/com/uber/cadence/serviceclient/WorkflowServiceTChannelTest.java index a3a2e739b..8add61525 100644 --- a/src/test/java/com/uber/cadence/serviceclient/WorkflowServiceTChannelTest.java +++ b/src/test/java/com/uber/cadence/serviceclient/WorkflowServiceTChannelTest.java @@ -276,6 +276,13 @@ public static Iterable data() { BadRequestError.class, null, }, + { + ResponseCode.Error, + new WorkflowService.ListDomains_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null, + }, { ResponseCode.Error, new WorkflowService.ListDomains_result() @@ -334,6 +341,34 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.ResetWorkflowExecution_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetWorkflowExecution_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetWorkflowExecution_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetWorkflowExecution_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -377,6 +412,42 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.TerminateWorkflowExecution_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.TerminateWorkflowExecution_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.TerminateWorkflowExecution_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.TerminateWorkflowExecution_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.TerminateWorkflowExecution_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -433,6 +504,27 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.ListOpenWorkflowExecutions_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ListOpenWorkflowExecutions_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ListOpenWorkflowExecutions_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -486,6 +578,20 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.ListClosedWorkflowExecutions_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ListClosedWorkflowExecutions_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -539,6 +645,20 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.ListWorkflowExecutions_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ListWorkflowExecutions_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -591,6 +711,20 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.ListArchivedWorkflowExecutions_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ListArchivedWorkflowExecutions_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -645,6 +779,20 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.ScanWorkflowExecutions_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ScanWorkflowExecutions_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -696,6 +844,20 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.CountWorkflowExecutions_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.CountWorkflowExecutions_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -842,6 +1004,50 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.ResetStickyTaskList_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetStickyTaskList_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetStickyTaskList_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetStickyTaskList_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError()), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetStickyTaskList_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError()), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ResetStickyTaskList_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -884,6 +1090,30 @@ public static Iterable data() { ServiceBusyError.class, null }, + { + ResponseCode.Error, + new WorkflowService.QueryWorkflow_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.QueryWorkflow_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.QueryWorkflow_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, new WorkflowService.QueryWorkflow_result(), TException.class, null + }, { ResponseCode.Error, new WorkflowService.QueryWorkflow_result(), TException.class, null }, @@ -931,6 +1161,27 @@ public static Iterable data() { ServiceBusyError.class, null }, + { + ResponseCode.Error, + new WorkflowService.DescribeWorkflowExecution_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.DescribeWorkflowExecution_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.DescribeWorkflowExecution_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.DescribeWorkflowExecution_result(), @@ -983,12 +1234,26 @@ public static Iterable data() { }, { ResponseCode.Error, - new WorkflowService.DescribeTaskList_result(), - TException.class, + new WorkflowService.DescribeTaskList_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, null }, - }); - } + { + ResponseCode.Error, + new WorkflowService.DescribeTaskList_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.DescribeTaskList_result(), + TException.class, + null + }, + }); + } @Test public void testResponse() throws Exception { @@ -1078,6 +1343,20 @@ public static Iterable data() { ServiceBusyError.class, null }, + { + ResponseCode.Error, + new WorkflowService.ListTaskListPartitions_result() + .setEntityNotExistError(new EntityNotExistsError("")), + EntityNotExistsError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.ListTaskListPartitions_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, { ResponseCode.Error, new WorkflowService.ListTaskListPartitions_result(), @@ -1140,6 +1419,13 @@ public static Iterable data() { DomainNotActiveError.class, null }, + { + ResponseCode.Error, + new WorkflowService.UpdateDomain_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, {ResponseCode.Error, new WorkflowService.UpdateDomain_result(), TException.class, null}, }); } @@ -1157,7 +1443,7 @@ public void callbackIsNotSupported() { } @RunWith(Parameterized.class) - public static class GetWorkflowExecutionHistoryWithTimeoutTest + public static class GetWorkflowExecutionHistoryTest extends BaseTest< WorkflowService.GetWorkflowExecutionHistory_result, GetWorkflowExecutionHistoryResponse> { @Parameterized.Parameters(name = "{index}: Response Code {0}, Response {1}") @@ -1199,6 +1485,13 @@ public static Iterable data() { ClientVersionNotSupportedError.class, null }, + { + ResponseCode.Error, + new WorkflowService.GetWorkflowExecutionHistory_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.GetWorkflowExecutionHistory_result(), @@ -1211,18 +1504,28 @@ public static Iterable data() { @Test public void responseIsHandledCorrectly() throws Exception { testHelper( - () -> - service.GetWorkflowExecutionHistoryWithTimeout( - new GetWorkflowExecutionHistoryRequest(), 1000L)); + () -> service.GetWorkflowExecutionHistory(new GetWorkflowExecutionHistoryRequest())); } @Test public void responseIsHandledCorrectlyWithCallback() throws Exception { + testHelperWithCallback( + callback -> + service.GetWorkflowExecutionHistory( + new GetWorkflowExecutionHistoryRequest(), callback)); testHelperWithCallback( callback -> service.GetWorkflowExecutionHistoryWithTimeout( new GetWorkflowExecutionHistoryRequest(), callback, 1000L)); } + + @Test + public void responseIsHandledCorrectlyWithTimeout() throws Exception { + testHelper( + () -> + service.GetWorkflowExecutionHistoryWithTimeout( + new GetWorkflowExecutionHistoryRequest(), 1000L)); + } } @RunWith(Parameterized.class) @@ -1289,6 +1592,27 @@ public static Iterable data() { ClientVersionNotSupportedError.class, null }, + { + ResponseCode.Error, + new WorkflowService.StartWorkflowExecutionAsync_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.StartWorkflowExecutionAsync_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.StartWorkflowExecutionAsync_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.StartWorkflowExecutionAsync_result(), @@ -1315,6 +1639,13 @@ public void responseIsHandledCorrectWithCallback() throws TChannelError, TExcept new StartWorkflowExecutionAsyncRequest() .setRequest(new StartWorkflowExecutionRequest()), callback)); + testHelperWithCallback( + callback -> + service.StartWorkflowExecutionAsyncWithTimeout( + new StartWorkflowExecutionAsyncRequest() + .setRequest(new StartWorkflowExecutionRequest()), + callback, + 1000L)); } } @@ -1382,6 +1713,27 @@ public static Iterable data() { ClientVersionNotSupportedError.class, null }, + { + ResponseCode.Error, + new WorkflowService.StartWorkflowExecution_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.StartWorkflowExecution_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.StartWorkflowExecution_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.StartWorkflowExecution_result(), @@ -1401,6 +1753,10 @@ public void responseIsHandledCorrectWithCallback() throws TChannelError, TExcept testHelperWithCallback( callback -> service.StartWorkflowExecution(new StartWorkflowExecutionRequest(), callback)); + testHelperWithCallback( + callback -> + service.StartWorkflowExecutionWithTimeout( + new StartWorkflowExecutionRequest(), callback, 1000L)); } } @@ -1453,6 +1809,20 @@ public static Iterable data() { ClientVersionNotSupportedError.class, null }, + { + ResponseCode.Error, + new WorkflowService.GetTaskListsByDomain_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.GetTaskListsByDomain_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.GetTaskListsByDomain_result(), @@ -1510,6 +1880,13 @@ public static Iterable data() { DomainNotActiveError.class, null }, + { + ResponseCode.Error, + new WorkflowService.DeprecateDomain_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.DeprecateDomain_result(), @@ -1563,6 +1940,27 @@ public static Iterable data() { ServiceBusyError.class, null }, + { + ResponseCode.Error, + new WorkflowService.PollForDecisionTask_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.PollForDecisionTask_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.PollForDecisionTask_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.PollForDecisionTask_result() @@ -1628,6 +2026,35 @@ public static Iterable data() { EntityNotExistsError.class, null }, + { + ResponseCode.Error, + new WorkflowService.RespondDecisionTaskCompleted_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondDecisionTaskCompleted_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondDecisionTaskCompleted_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondDecisionTaskCompleted_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.RespondDecisionTaskCompleted_result(), @@ -1687,6 +2114,27 @@ public static Iterable data() { EntityNotExistsError.class, null }, + { + ResponseCode.Error, + new WorkflowService.PollForActivityTask_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.PollForActivityTask_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.PollForActivityTask_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.PollForActivityTask_result(), @@ -1744,6 +2192,35 @@ public static Iterable data() { EntityNotExistsError.class, null }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeat_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeat_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeat_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeat_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError()), + WorkflowExecutionAlreadyCompletedError.class, + null + }, { ResponseCode.Error, new WorkflowService.RecordActivityTaskHeartbeat_result(), @@ -1805,6 +2282,35 @@ public static Iterable data() { EntityNotExistsError.class, null }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeatByID_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeatByID_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeatByID_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RecordActivityTaskHeartbeatByID_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError()), + WorkflowExecutionAlreadyCompletedError.class, + null + }, { ResponseCode.Error, new WorkflowService.RecordActivityTaskHeartbeatByID_result(), @@ -1864,11 +2370,40 @@ public static Iterable data() { }, { ResponseCode.Error, - new WorkflowService.RespondActivityTaskCompleted_result(), - TException.class, - null - }, - }); + new WorkflowService.RespondActivityTaskCompleted_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompleted_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompleted_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompleted_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompleted_result(), + TException.class, + null + }, + }); } @Test @@ -1923,6 +2458,35 @@ public static Iterable data() { EntityNotExistsError.class, null }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompletedByID_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompletedByID_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompletedByID_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCompletedByID_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, { ResponseCode.Error, new WorkflowService.RespondActivityTaskCompletedByID_result(), @@ -1979,6 +2543,35 @@ public static Iterable data() { EntityNotExistsError.class, null }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailed_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailed_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailed_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailed_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, { ResponseCode.Error, new WorkflowService.RespondActivityTaskFailed_result(), @@ -2045,6 +2638,35 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailedByID_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailedByID_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailedByID_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskFailedByID_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, }); } @@ -2101,6 +2723,41 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceled_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceled_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceled_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceled_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceled_result(), + TException.class, + null + } }); } @@ -2162,6 +2819,35 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceledByID_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceledByID_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceledByID_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondActivityTaskCanceledByID_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, }); } @@ -2223,6 +2909,35 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.RequestCancelWorkflowExecution_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RequestCancelWorkflowExecution_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RequestCancelWorkflowExecution_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RequestCancelWorkflowExecution_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, }); } @@ -2279,6 +2994,41 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.SignalWorkflowExecution_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWorkflowExecution_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWorkflowExecution_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWorkflowExecution_result() + .setWorkflowExecutionAlreadyCompletedError( + new WorkflowExecutionAlreadyCompletedError("")), + WorkflowExecutionAlreadyCompletedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWorkflowExecution_result(), + TException.class, + null + }, }); } @@ -2342,6 +3092,27 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.SignalWithStartWorkflowExecution_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWithStartWorkflowExecution_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWithStartWorkflowExecution_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, }); } @@ -2466,6 +3237,27 @@ public static Iterable data() { TException.class, null }, + { + ResponseCode.Error, + new WorkflowService.SignalWithStartWorkflowExecutionAsync_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWithStartWorkflowExecutionAsync_result() + .setLimitExceededError(new LimitExceededError("")), + LimitExceededError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.SignalWithStartWorkflowExecutionAsync_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + } }); } @@ -2526,6 +3318,27 @@ public static Iterable data() { ServiceBusyError.class, null }, + { + ResponseCode.Error, + new WorkflowService.RespondDecisionTaskFailed_result() + .setDomainNotActiveError(new DomainNotActiveError()), + DomainNotActiveError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondDecisionTaskFailed_result() + .setClientVersionNotSupportedError(new ClientVersionNotSupportedError()), + ClientVersionNotSupportedError.class, + null + }, + { + ResponseCode.Error, + new WorkflowService.RespondDecisionTaskFailed_result() + .setLimitExceededError(new LimitExceededError()), + LimitExceededError.class, + null + }, { ResponseCode.Error, new WorkflowService.RespondDecisionTaskFailed_result(),