use of com.google.appengine.tools.development.LocalRpcService.Status in project appengine-java-standard by GoogleCloudPlatform.
the class LocalTaskQueueTest method testQueryAndOwnTasksWithUnspecifiedTag.
@Test
public void testQueryAndOwnTasksWithUnspecifiedTag() throws Exception {
class MockClock implements Clock {
@Override
public long getCurrentTime() {
// Force nowMillis of QueryAndOwnTasks is guaranteed to be bigger than task eta.
return Clock.DEFAULT.getCurrentTime() + 1000;
}
}
initLocalTaskQueue(new MockClock());
TaskQueueBulkAddResponse sbresponse = localService.bulkAdd(new Status(), bulkAddPullRequest.build());
assertThat(sbresponse).isEqualTo(expectedBulkAddResponse.build());
TaskQueueQueryAndOwnTasksRequest request = TaskQueueQueryAndOwnTasksRequest.newBuilder().setQueueName(ByteString.copyFromUtf8("pull-queue")).setLeaseSeconds(10).setMaxTasks(5).setGroupByTag(true).build();
TaskQueueQueryAndOwnTasksResponse response = localService.queryAndOwnTasks(new Status(), request);
assertThat(response.getTaskCount()).isEqualTo(2);
assertThat(response.getTask(0).getTaskName().toStringUtf8()).isEqualTo("a-task-0");
assertThat(response.getTask(0).getBody().toStringUtf8()).isEqualTo("payload0");
assertThat(response.getTask(0).getTag().toStringUtf8()).isEqualTo("tag");
assertThat(response.getTask(1).getTaskName().toStringUtf8()).isEqualTo("a-task-2");
assertThat(response.getTask(1).getBody().toStringUtf8()).isEqualTo("payload2");
assertThat(response.getTask(1).getTag().toStringUtf8()).isEqualTo("tag");
}
use of com.google.appengine.tools.development.LocalRpcService.Status in project appengine-java-standard by GoogleCloudPlatform.
the class LocalTaskQueueTest method testBulkAddNoName.
@Test
public void testBulkAddNoName() throws Exception {
addRequest1.setTaskName(ByteString.copyFromUtf8(""));
addRequest2.setTaskName(ByteString.copyFromUtf8(""));
addRequest3.setTaskName(ByteString.copyFromUtf8(""));
TaskQueueBulkAddResponse response = localService.bulkAdd(new Status(), bulkAddRequest.build());
assertThat(response.getTaskResult(0).getChosenTaskName().toStringUtf8()).startsWith("task-");
assertThat(response.getTaskResult(1).getChosenTaskName().toStringUtf8()).startsWith("task-");
assertThat(response.getTaskResult(2).getChosenTaskName().toStringUtf8()).startsWith("task-");
expectedTaskResult1.setChosenTaskName(response.getTaskResult(0).getChosenTaskName());
expectedTaskResult2.setChosenTaskName(response.getTaskResult(1).getChosenTaskName());
expectedTaskResult3.setChosenTaskName(response.getTaskResult(2).getChosenTaskName());
assertThat(response).isEqualTo(expectedBulkAddResponse.build());
}
use of com.google.appengine.tools.development.LocalRpcService.Status in project appengine-java-standard by GoogleCloudPlatform.
the class LocalTaskQueueTest method assertValidationExceptionPull.
private void assertValidationExceptionPull(ErrorCode ec) {
expectedTaskResult1.setResult(ErrorCode.SKIPPED);
expectedTaskResult2.setResult(ec);
expectedTaskResult3.setResult(ErrorCode.SKIPPED);
TaskQueueBulkAddResponse response = localService.bulkAdd(new Status(), bulkAddPullRequest.build());
assertThat(response).isEqualTo(expectedBulkAddResponse.buildPartial());
}
use of com.google.appengine.tools.development.LocalRpcService.Status in project appengine-java-standard by GoogleCloudPlatform.
the class LocalTaskQueueTest method testDeleteMultiple.
@Test
public void testDeleteMultiple() throws Exception {
localService.bulkAdd(new Status(), bulkAddRequest.build());
TaskQueueDeleteRequest deleteRequest = TaskQueueDeleteRequest.newBuilder().setQueueName(ByteString.copyFromUtf8(entry.getName())).addTaskName(bulkAddRequest.getAddRequest(1).getTaskName()).addTaskName(bulkAddRequest.getAddRequest(0).getTaskName()).build();
TaskQueueDeleteResponse deleteResponse = localService.delete(new Status(), deleteRequest);
assertThat(deleteResponse.getResultCount()).isEqualTo(2);
assertThat(deleteResponse.getResult(0)).isEqualTo(ErrorCode.OK);
assertThat(deleteResponse.getResult(1)).isEqualTo(ErrorCode.OK);
QueueStateInfo queueInfo = localService.getQueueStateInfo().get(entry.getName());
assertThat(queueInfo.getCountTasks()).isEqualTo(1);
}
use of com.google.appengine.tools.development.LocalRpcService.Status in project appengine-java-standard by GoogleCloudPlatform.
the class LocalTaskQueueTest method testExtendTaskLeaseOnPushQueue.
@Test
public void testExtendTaskLeaseOnPushQueue() throws Exception {
TaskQueueModifyTaskLeaseRequest extendRequest = TaskQueueModifyTaskLeaseRequest.newBuilder().setQueueName(ByteString.copyFromUtf8(entry.getName())).setTaskName(ByteString.copyFromUtf8("foo")).setEtaUsec(0).setLeaseSeconds(30).build();
ApiProxy.ApplicationException e = assertThrows(ApiProxy.ApplicationException.class, () -> localService.modifyTaskLease(new Status(), extendRequest));
assertThat(e.getApplicationError()).isEqualTo(ErrorCode.INVALID_QUEUE_MODE_VALUE);
}
Aggregations