summaryrefslogtreecommitdiffstats
path: root/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java')
-rw-r--r--gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java204
1 files changed, 0 insertions, 204 deletions
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java
deleted file mode 100644
index 8bf46d6836..0000000000
--- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java
+++ /dev/null
@@ -1,204 +0,0 @@
-// Copyright (C) 2015 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.accounts;
-
-import static com.google.common.truth.Truth.assertThat;
-import static com.google.gerrit.acceptance.AssertUtil.assertPrefs;
-
-import com.google.gerrit.acceptance.AbstractDaemonTest;
-import com.google.gerrit.acceptance.NoHttpd;
-import com.google.gerrit.acceptance.Sandboxed;
-import com.google.gerrit.acceptance.TestAccount;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.DateFormat;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.DefaultBase;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.DiffView;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.DownloadCommand;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.EmailFormat;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.EmailStrategy;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.ReviewCategoryStrategy;
-import com.google.gerrit.extensions.client.GeneralPreferencesInfo.TimeFormat;
-import com.google.gerrit.extensions.client.MenuItem;
-import com.google.gerrit.extensions.restapi.BadRequestException;
-import com.google.gerrit.reviewdb.client.RefNames;
-import com.google.gerrit.server.config.AllUsersName;
-import com.google.inject.Inject;
-import java.util.ArrayList;
-import java.util.HashMap;
-import org.eclipse.jgit.lib.RefUpdate;
-import org.eclipse.jgit.lib.Repository;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-@NoHttpd
-@Sandboxed
-public class GeneralPreferencesIT extends AbstractDaemonTest {
- @Inject private AllUsersName allUsers;
-
- private TestAccount user42;
-
- @Before
- public void setUp() throws Exception {
- String name = name("user42");
- user42 = accountCreator.create(name, name + "@example.com", "User 42");
- }
-
- @After
- public void cleanUp() throws Exception {
- gApi.accounts().id(user42.getId().toString()).setPreferences(GeneralPreferencesInfo.defaults());
-
- try (Repository git = repoManager.openRepository(allUsers)) {
- if (git.exactRef(RefNames.REFS_USERS_DEFAULT) != null) {
- RefUpdate u = git.updateRef(RefNames.REFS_USERS_DEFAULT);
- u.setForceUpdate(true);
- assertThat(u.delete()).isEqualTo(RefUpdate.Result.FORCED);
- }
- }
- accountCache.evictAllNoReindex();
- }
-
- @Test
- public void getAndSetPreferences() throws Exception {
- GeneralPreferencesInfo o = gApi.accounts().id(user42.id.toString()).getPreferences();
- assertPrefs(o, GeneralPreferencesInfo.defaults(), "my", "changeTable");
- assertThat(o.my)
- .containsExactly(
- new MenuItem("Changes", "#/dashboard/self", null),
- new MenuItem("Draft Comments", "#/q/has:draft", null),
- new MenuItem("Edits", "#/q/has:edit", null),
- new MenuItem("Watched Changes", "#/q/is:watched+is:open", null),
- new MenuItem("Starred Changes", "#/q/is:starred", null),
- new MenuItem("Groups", "#/groups/self", null));
- assertThat(o.changeTable).isEmpty();
-
- GeneralPreferencesInfo i = GeneralPreferencesInfo.defaults();
-
- // change all default values
- i.changesPerPage *= -1;
- i.showSiteHeader ^= true;
- i.useFlashClipboard ^= true;
- i.downloadCommand = DownloadCommand.REPO_DOWNLOAD;
- i.dateFormat = DateFormat.US;
- i.timeFormat = TimeFormat.HHMM_24;
- i.emailStrategy = EmailStrategy.DISABLED;
- i.emailFormat = EmailFormat.PLAINTEXT;
- i.defaultBaseForMerges = DefaultBase.AUTO_MERGE;
- i.expandInlineDiffs ^= true;
- i.highlightAssigneeInChangeTable ^= true;
- i.relativeDateInChangeTable ^= true;
- i.sizeBarInChangeTable ^= true;
- i.legacycidInChangeTable ^= true;
- i.muteCommonPathPrefixes ^= true;
- i.signedOffBy ^= true;
- i.reviewCategoryStrategy = ReviewCategoryStrategy.ABBREV;
- i.diffView = DiffView.UNIFIED_DIFF;
- i.my = new ArrayList<>();
- i.my.add(new MenuItem("name", "url"));
- i.changeTable = new ArrayList<>();
- i.changeTable.add("Status");
- i.urlAliases = new HashMap<>();
- i.urlAliases.put("foo", "bar");
-
- o = gApi.accounts().id(user42.getId().toString()).setPreferences(i);
- assertPrefs(o, i, "my");
- assertThat(o.my).containsExactlyElementsIn(i.my);
- assertThat(o.changeTable).containsExactlyElementsIn(i.changeTable);
- }
-
- @Test
- public void getPreferencesWithConfiguredDefaults() throws Exception {
- GeneralPreferencesInfo d = GeneralPreferencesInfo.defaults();
- int newChangesPerPage = d.changesPerPage * 2;
- GeneralPreferencesInfo update = new GeneralPreferencesInfo();
- update.changesPerPage = newChangesPerPage;
- gApi.config().server().setDefaultPreferences(update);
-
- GeneralPreferencesInfo o = gApi.accounts().id(user42.getId().toString()).getPreferences();
-
- // assert configured defaults
- assertThat(o.changesPerPage).isEqualTo(newChangesPerPage);
-
- // assert hard-coded defaults
- assertPrefs(o, d, "my", "changeTable", "changesPerPage");
- }
-
- @Test
- public void overwriteConfiguredDefaults() throws Exception {
- GeneralPreferencesInfo d = GeneralPreferencesInfo.defaults();
- int configuredChangesPerPage = d.changesPerPage * 2;
- GeneralPreferencesInfo update = new GeneralPreferencesInfo();
- update.changesPerPage = configuredChangesPerPage;
- gApi.config().server().setDefaultPreferences(update);
-
- GeneralPreferencesInfo o = gApi.accounts().id(admin.getId().toString()).getPreferences();
- assertThat(o.changesPerPage).isEqualTo(configuredChangesPerPage);
- assertPrefs(o, d, "my", "changeTable", "changesPerPage");
-
- int newChangesPerPage = configuredChangesPerPage * 2;
- GeneralPreferencesInfo i = new GeneralPreferencesInfo();
- i.changesPerPage = newChangesPerPage;
- GeneralPreferencesInfo a = gApi.accounts().id(admin.getId().toString()).setPreferences(i);
- assertThat(a.changesPerPage).isEqualTo(newChangesPerPage);
- assertPrefs(a, d, "my", "changeTable", "changesPerPage");
-
- a = gApi.accounts().id(admin.getId().toString()).getPreferences();
- assertThat(a.changesPerPage).isEqualTo(newChangesPerPage);
- assertPrefs(a, d, "my", "changeTable", "changesPerPage");
-
- // overwrite the configured default with original hard-coded default
- i = new GeneralPreferencesInfo();
- i.changesPerPage = d.changesPerPage;
- a = gApi.accounts().id(admin.getId().toString()).setPreferences(i);
- assertThat(a.changesPerPage).isEqualTo(d.changesPerPage);
- assertPrefs(a, d, "my", "changeTable", "changesPerPage");
-
- a = gApi.accounts().id(admin.getId().toString()).getPreferences();
- assertThat(a.changesPerPage).isEqualTo(d.changesPerPage);
- assertPrefs(a, d, "my", "changeTable", "changesPerPage");
- }
-
- @Test
- public void rejectMyMenuWithoutName() throws Exception {
- GeneralPreferencesInfo i = GeneralPreferencesInfo.defaults();
- i.my = new ArrayList<>();
- i.my.add(new MenuItem(null, "url"));
-
- exception.expect(BadRequestException.class);
- exception.expectMessage("name for menu item is required");
- gApi.accounts().id(user42.getId().toString()).setPreferences(i);
- }
-
- @Test
- public void rejectMyMenuWithoutUrl() throws Exception {
- GeneralPreferencesInfo i = GeneralPreferencesInfo.defaults();
- i.my = new ArrayList<>();
- i.my.add(new MenuItem("name", null));
-
- exception.expect(BadRequestException.class);
- exception.expectMessage("URL for menu item is required");
- gApi.accounts().id(user42.getId().toString()).setPreferences(i);
- }
-
- @Test
- public void trimMyMenuInput() throws Exception {
- GeneralPreferencesInfo i = GeneralPreferencesInfo.defaults();
- i.my = new ArrayList<>();
- i.my.add(new MenuItem(" name\t", " url\t", " _blank\t", " id\t"));
-
- GeneralPreferencesInfo o = gApi.accounts().id(user42.getId().toString()).setPreferences(i);
- assertThat(o.my).containsExactly(new MenuItem("name", "url", "_blank", "id"));
- }
-}