summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Sohn <matthias.sohn@gmail.com>2021-01-14 21:09:24 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2021-01-14 21:09:24 +0000
commitbd675456bb3369ccdf066d9de5c16a85da527234 (patch)
tree9184451ff8973baae44b8d53176cb79c4dd68cf9
parentc64cd36a57dc9695e14c1cc8fd0adcf1d915e3fd (diff)
parente19fa5cbac6a55ce91f1ef010ebe592858b2f10c (diff)
Merge "AccountResolver: limit number of ambiguous accounts in error message" into stable-3.1
-rw-r--r--java/com/google/gerrit/server/account/AccountResolver.java5
-rw-r--r--javatests/com/google/gerrit/server/account/AccountResolverTest.java6
2 files changed, 8 insertions, 3 deletions
diff --git a/java/com/google/gerrit/server/account/AccountResolver.java b/java/com/google/gerrit/server/account/AccountResolver.java
index 988d8713fa..23244659f8 100644
--- a/java/com/google/gerrit/server/account/AccountResolver.java
+++ b/java/com/google/gerrit/server/account/AccountResolver.java
@@ -109,7 +109,10 @@ public class AccountResolver {
return result.asList().stream()
.map(a -> formatForException(result, a))
- .collect(joining("\n", "Account '" + result.input() + "' is ambiguous:\n", ""));
+ .limit(3)
+ .collect(
+ joining(
+ "\n", "Account '" + result.input() + "' is ambiguous (at most 3 shown):\n", ""));
}
private static String formatForException(Result result, AccountState state) {
diff --git a/javatests/com/google/gerrit/server/account/AccountResolverTest.java b/javatests/com/google/gerrit/server/account/AccountResolverTest.java
index 769370ac37..5f14d28c90 100644
--- a/javatests/com/google/gerrit/server/account/AccountResolverTest.java
+++ b/javatests/com/google/gerrit/server/account/AccountResolverTest.java
@@ -269,7 +269,8 @@ public class AccountResolverTest {
() -> search("foo", searchers, allVisible()).asUnique());
assertThat(thrown)
.hasMessageThat()
- .isEqualTo("Account 'foo' is ambiguous:\n1: Anonymous Name (1)\n2: Anonymous Name (2)");
+ .isEqualTo(
+ "Account 'foo' is ambiguous (at most 3 shown):\n1: Anonymous Name (1)\n2: Anonymous Name (2)");
}
@Test
@@ -311,7 +312,8 @@ public class AccountResolverTest {
.new Result(
"foo", ImmutableList.of(newAccount(3), newAccount(1)), ImmutableList.of())))
.hasMessageThat()
- .isEqualTo("Account 'foo' is ambiguous:\n1: Anonymous Name (1)\n3: Anonymous Name (3)");
+ .isEqualTo(
+ "Account 'foo' is ambiguous (at most 3 shown):\n1: Anonymous Name (1)\n3: Anonymous Name (3)");
}
@Test