Skip to content

Commit 8c8d0da

Browse files
committed
gitlabUserUsername variable is not set for Note (comments) trigger
1 parent 17ccfee commit 8c8d0da

File tree

3 files changed

+28
-10
lines changed

3 files changed

+28
-10
lines changed

src/main/java/com/dabsquared/gitlabjenkins/trigger/handler/note/NoteHookTriggerHandlerImpl.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,9 @@ protected CauseData retrieveCauseData(NoteHook hook) {
7171
.withTargetProjectId(hook.getMergeRequest().getTargetProjectId())
7272
.withBranch(hook.getMergeRequest().getSourceBranch())
7373
.withSourceBranch(hook.getMergeRequest().getSourceBranch())
74-
.withUserName(hook.getMergeRequest().getLastCommit().getAuthor().getName())
75-
.withUserEmail(
76-
hook.getMergeRequest().getLastCommit().getAuthor().getEmail())
74+
.withUserName(hook.getUser().getName())
75+
.withUserUsername(hook.getUser().getUsername())
76+
.withUserEmail(hook.getUser().getEmail())
7777
.withSourceRepoHomepage(hook.getMergeRequest().getSource().getHomepage())
7878
.withSourceRepoName(hook.getMergeRequest().getSource().getName())
7979
.withSourceNamespace(hook.getMergeRequest().getSource().getNamespace())

src/test/java/com/dabsquared/gitlabjenkins/trigger/handler/note/NoteHookTriggerHandlerImplTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,13 @@ public boolean perform(AbstractBuild<?, ?> build, Launcher launcher, BuildListen
159159
.withWebUrl("https://gitlab.org/test.git")
160160
.build())
161161
.build())
162+
.withUser(user().withId(1)
163+
.withName("User")
164+
.withUsername("user")
165+
.withEmail("[email protected]")
166+
.withAvatarUrl(
167+
"https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon")
168+
.build())
162169
.build(),
163170
true,
164171
BranchFilterFactory.newBranchFilter(branchFilterConfig().build(BranchFilterType.All)),

src/test/java/com/dabsquared/gitlabjenkins/webhook/build/NoteBuildActionTest.java

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
package com.dabsquared.gitlabjenkins.webhook.build;
22

33
import static com.dabsquared.gitlabjenkins.cause.CauseDataBuilder.causeData;
4+
import static org.hamcrest.CoreMatchers.containsString;
5+
import static org.hamcrest.MatcherAssert.assertThat;
6+
import static org.hamcrest.Matchers.is;
7+
import static org.hamcrest.Matchers.notNullValue;
48
import static org.mockito.ArgumentMatchers.any;
59
import static org.mockito.Mockito.verify;
610

@@ -28,6 +32,7 @@
2832
import org.jvnet.hudson.test.JenkinsRule;
2933
import org.kohsuke.stapler.HttpResponses;
3034
import org.kohsuke.stapler.StaplerResponse;
35+
import org.mockito.ArgumentCaptor;
3136
import org.mockito.Mock;
3237
import org.mockito.junit.MockitoJUnitRunner;
3338

@@ -68,13 +73,19 @@ public void setup() throws Exception {
6873

6974
@Test
7075
public void build() throws IOException {
71-
FreeStyleProject testProject = jenkins.createFreeStyleProject();
72-
testProject.addTrigger(trigger);
73-
74-
exception.expect(HttpResponses.HttpResponseException.class);
75-
new NoteBuildAction(testProject, getJson("NoteEvent.json"), null).execute(response);
76-
77-
verify(trigger).onPost(any(NoteHook.class));
76+
try {
77+
FreeStyleProject testProject = jenkins.createFreeStyleProject();
78+
testProject.addTrigger(trigger);
79+
80+
exception.expect(HttpResponses.HttpResponseException.class);
81+
new NoteBuildAction(testProject, getJson("NoteEvent.json"), null).execute(response);
82+
} finally {
83+
ArgumentCaptor<NoteHook> noteHookArgumentCaptor = ArgumentCaptor.forClass(NoteHook.class);
84+
verify(trigger).onPost(noteHookArgumentCaptor.capture());
85+
assertThat(noteHookArgumentCaptor.getValue().getUser(), is(notNullValue()));
86+
assertThat(noteHookArgumentCaptor.getValue().getUser().getName(), containsString("Administrator"));
87+
assertThat(noteHookArgumentCaptor.getValue().getUser().getUsername(), containsString("root"));
88+
}
7889
}
7990

8091
@Test

0 commit comments

Comments
 (0)