Use change owner name in non-reviewer newchange emails If User-A CC's User-B to a change owned by User-C, then User-B will receive a newchange email. However, since User-B is CC'd on the change rather than added as a reviewer, the email would not include any new reviewers. This type of newchange email expects the user initiating the notification to be the owner and includes the text... [fromName] has uploaded this change for review. Problematically, since User-A initiated the notification, it says that User-A has uploaded a change, but User-A merely added somebody to the CC list. It should attribute the change to the owner: User-C. With this change, newchange emails use the owner's name in these cases rather than whichever user initiated the notification. Bug: Issue 4790 Change-Id: Iecadcb7b4642ef062fdc26db7208bdd932a4f96f
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java index b4575ae..02d74bf 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java
@@ -793,7 +793,7 @@ Message m = messages.get(0); assertThat(m.rcpt()).containsExactly(user.emailAddress); assertThat(m.body()) - .contains(admin.fullName + " has uploaded a new change for review"); + .contains(admin.fullName + " has uploaded this change for review"); assertThat(m.body()) .contains("Change subject: " + PushOneCommit.SUBJECT + "\n"); assertMailFrom(m, admin.email);
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java index c9cb06f..7c84d6a 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/ChangeReviewersIT.java
@@ -141,7 +141,7 @@ assertThat(m.rcpt()).containsExactly(user.emailAddress); if (notesMigration.readChanges()) { assertThat(m.body()) - .contains(admin.fullName + " has uploaded a new change for review."); + .contains(admin.fullName + " has uploaded this change for review."); } else { assertThat(m.body()).contains("Hello " + user.fullName + ",\n"); assertThat(m.body()).contains("I'd like you to do a code review.");
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java index c858b8e..b4d6d01 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/send/NewChangeSender.java
@@ -88,6 +88,7 @@ @Override protected void setupSoyContext() { super.setupSoyContext(); + soyContext.put("ownerName", getNameFor(change.getOwner())); soyContextEmailData.put("reviewerNames", getReviewerNames()); }
diff --git a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy index 296f625..9f7429f 100644 --- a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy +++ b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChange.soy
@@ -21,7 +21,7 @@ * user submitting a new change for review. * @param change * @param email - * @param fromName + * @param ownerName * @param patchSet * @param projectName */ @@ -52,7 +52,7 @@ to review the following change. {/if} {else} - {$fromName} has uploaded a new change for review. + {$ownerName} has uploaded this change for review. {if $email.changeUrl} ( {$email.changeUrl}{/if} {/if}{\n}
diff --git a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy index eef3a7e..559bb26 100644 --- a/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy +++ b/gerrit-server/src/main/resources/com/google/gerrit/server/mail/NewChangeHtml.soy
@@ -19,6 +19,7 @@ /** * @param email * @param fromName + * @param ownerName * @param patchSet * @param projectName */ @@ -34,7 +35,7 @@ {/foreach}{sp} to <strong>review</strong> this change. {else} - {$fromName} uploaded this change for <strong>review</strong>. + {$ownerName} has uploaded this change for <strong>review</strong>. {/if} </p>