summaryrefslogtreecommitdiffstats
path: root/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/DashboardIT.java
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/DashboardIT.java')
-rw-r--r--gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/DashboardIT.java152
1 files changed, 0 insertions, 152 deletions
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/DashboardIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/DashboardIT.java
deleted file mode 100644
index b140a6e72d..0000000000
--- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/DashboardIT.java
+++ /dev/null
@@ -1,152 +0,0 @@
-// Copyright (C) 2017 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.api.project;
-
-import static com.google.common.truth.Truth.assertThat;
-import static com.google.gerrit.server.group.SystemGroupBackend.REGISTERED_USERS;
-
-import com.google.gerrit.acceptance.AbstractDaemonTest;
-import com.google.gerrit.acceptance.NoHttpd;
-import com.google.gerrit.common.data.Permission;
-import com.google.gerrit.extensions.api.projects.BranchInput;
-import com.google.gerrit.extensions.api.projects.DashboardInfo;
-import com.google.gerrit.extensions.api.projects.ProjectApi;
-import com.google.gerrit.extensions.restapi.BadRequestException;
-import com.google.gerrit.extensions.restapi.ResourceConflictException;
-import com.google.gerrit.extensions.restapi.ResourceNotFoundException;
-import com.google.gerrit.extensions.restapi.RestApiException;
-import com.google.gerrit.server.project.DashboardsCollection;
-import java.util.List;
-import org.eclipse.jgit.junit.TestRepository;
-import org.eclipse.jgit.lib.Repository;
-import org.eclipse.jgit.revwalk.RevCommit;
-import org.junit.Before;
-import org.junit.Test;
-
-@NoHttpd
-public class DashboardIT extends AbstractDaemonTest {
- @Before
- public void setup() throws Exception {
- allow("refs/meta/dashboards/*", Permission.CREATE, REGISTERED_USERS);
- }
-
- @Test
- public void defaultDashboardDoesNotExist() throws Exception {
- exception.expect(ResourceNotFoundException.class);
- project().defaultDashboard().get();
- }
-
- @Test
- public void dashboardDoesNotExist() throws Exception {
- exception.expect(ResourceNotFoundException.class);
- project().dashboard("my:dashboard").get();
- }
-
- @Test
- public void getDashboard() throws Exception {
- assertThat(dashboards()).isEmpty();
- DashboardInfo info = createDashboard(DashboardsCollection.DEFAULT_DASHBOARD_NAME, "test");
- DashboardInfo result = project().dashboard(info.id).get();
- assertThat(result.id).isEqualTo(info.id);
- assertThat(result.path).isEqualTo(info.path);
- assertThat(result.ref).isEqualTo(info.ref);
- assertThat(result.project).isEqualTo(project.get());
- assertThat(result.definingProject).isEqualTo(project.get());
- assertThat(dashboards()).hasSize(1);
- }
-
- @Test
- public void setDefaultDashboard() throws Exception {
- DashboardInfo info = createDashboard(DashboardsCollection.DEFAULT_DASHBOARD_NAME, "test");
- assertThat(info.isDefault).isNull();
- project().dashboard(info.id).setDefault();
- assertThat(project().dashboard(info.id).get().isDefault).isTrue();
- assertThat(project().defaultDashboard().get().id).isEqualTo(info.id);
- }
-
- @Test
- public void setDefaultDashboardByProject() throws Exception {
- DashboardInfo info = createDashboard(DashboardsCollection.DEFAULT_DASHBOARD_NAME, "test");
- assertThat(info.isDefault).isNull();
- project().defaultDashboard(info.id);
- assertThat(project().dashboard(info.id).get().isDefault).isTrue();
- assertThat(project().defaultDashboard().get().id).isEqualTo(info.id);
-
- project().removeDefaultDashboard();
- assertThat(project().dashboard(info.id).get().isDefault).isNull();
-
- exception.expect(ResourceNotFoundException.class);
- project().defaultDashboard().get();
- }
-
- @Test
- public void replaceDefaultDashboard() throws Exception {
- DashboardInfo d1 = createDashboard(DashboardsCollection.DEFAULT_DASHBOARD_NAME, "test1");
- DashboardInfo d2 = createDashboard(DashboardsCollection.DEFAULT_DASHBOARD_NAME, "test2");
- assertThat(d1.isDefault).isNull();
- assertThat(d2.isDefault).isNull();
- project().dashboard(d1.id).setDefault();
- assertThat(project().dashboard(d1.id).get().isDefault).isTrue();
- assertThat(project().dashboard(d2.id).get().isDefault).isNull();
- assertThat(project().defaultDashboard().get().id).isEqualTo(d1.id);
- project().dashboard(d2.id).setDefault();
- assertThat(project().defaultDashboard().get().id).isEqualTo(d2.id);
- assertThat(project().dashboard(d1.id).get().isDefault).isNull();
- assertThat(project().dashboard(d2.id).get().isDefault).isTrue();
- }
-
- @Test
- public void cannotGetDashboardWithInheritedForNonDefault() throws Exception {
- DashboardInfo info = createDashboard(DashboardsCollection.DEFAULT_DASHBOARD_NAME, "test");
- exception.expect(BadRequestException.class);
- exception.expectMessage("inherited flag can only be used with default");
- project().dashboard(info.id).get(true);
- }
-
- private List<DashboardInfo> dashboards() throws Exception {
- return project().dashboards().get();
- }
-
- private ProjectApi project() throws RestApiException {
- return gApi.projects().name(project.get());
- }
-
- private DashboardInfo createDashboard(String ref, String path) throws Exception {
- DashboardInfo info = DashboardsCollection.newDashboardInfo(ref, path);
- String canonicalRef = DashboardsCollection.normalizeDashboardRef(info.ref);
- try {
- project().branch(canonicalRef).create(new BranchInput());
- } catch (ResourceConflictException e) {
- // The branch already exists if this method has already been called once.
- if (!e.getMessage().contains("already exists")) {
- throw e;
- }
- }
- try (Repository r = repoManager.openRepository(project)) {
- TestRepository<Repository>.CommitBuilder cb =
- new TestRepository<>(r).branch(canonicalRef).commit();
- String content =
- "[dashboard]\n"
- + "Description = Test\n"
- + "foreach = owner:self\n"
- + "[section \"Mine\"]\n"
- + "query = is:open";
- cb.add(info.path, content);
- RevCommit c = cb.create();
- project().commit(c.name());
- }
- return info;
- }
-}