From e47bf86886948ad27493615c89c554b56c045dae Mon Sep 17 00:00:00 2001 From: Edwin Kempin Date: Tue, 8 Jul 2014 13:12:06 +0200 Subject: [PATCH] Add test for list tasks REST endpoint Change-Id: Ia8d22b2c39d82e8c4e05c7800912361f43d936a3 Signed-off-by: Edwin Kempin --- .../acceptance/rest/config/ListTasksIT.java | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/ListTasksIT.java diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/ListTasksIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/ListTasksIT.java new file mode 100644 index 0000000000..205a701a0d --- /dev/null +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/ListTasksIT.java @@ -0,0 +1,65 @@ +// Copyright (C) 2014 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License 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.google.gerrit.acceptance.rest.config; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import com.google.gerrit.acceptance.AbstractDaemonTest; +import com.google.gerrit.acceptance.RestResponse; +import com.google.gerrit.server.config.ListTasks.TaskInfo; +import com.google.gson.reflect.TypeToken; + +import org.apache.http.HttpStatus; +import org.junit.Test; + +import java.io.IOException; +import java.util.List; + +public class ListTasksIT extends AbstractDaemonTest { + + @Test + public void listTasks() throws IOException { + RestResponse r = adminSession.get("/config/server/tasks/"); + assertEquals(HttpStatus.SC_OK, r.getStatusCode()); + List result = + newGson().fromJson(r.getReader(), + new TypeToken>() {}.getType()); + assertTrue(result.size() > 0); + boolean foundLogFileCompressorTask = false; + for (TaskInfo info : result) { + if ("Log File Compressor".equals(info.command)) { + foundLogFileCompressorTask = true; + } + assertNotNull(info.id); + Long.parseLong(info.id, 16); + assertNotNull(info.command); + assertNotNull(info.startTime); + } + assertTrue(foundLogFileCompressorTask); + } + + @Test + public void listTasksWithoutViewQueueCapability() throws IOException { + RestResponse r = userSession.get("/config/server/tasks/"); + assertEquals(HttpStatus.SC_OK, r.getStatusCode()); + List result = + newGson().fromJson(r.getReader(), + new TypeToken>() {}.getType()); + + assertTrue(result.isEmpty()); + } +}