diff --git a/src/test/java/org/eclipsefoundation/git/eca/resource/GithubWebhooksResourceTest.java b/src/test/java/org/eclipsefoundation/git/eca/resource/GithubWebhooksResourceTest.java index 1c3aa8ad0d9c58c72d85be438ef3c70e0ea80e39..8f0b76e642f3d1776f25ebb2da039db647ca96e6 100644 --- a/src/test/java/org/eclipsefoundation/git/eca/resource/GithubWebhooksResourceTest.java +++ b/src/test/java/org/eclipsefoundation/git/eca/resource/GithubWebhooksResourceTest.java @@ -16,6 +16,7 @@ import java.util.Optional; import org.eclipsefoundation.git.eca.api.models.GithubWebhookRequest; import org.eclipsefoundation.git.eca.api.models.GithubWebhookRequest.Installation; +import org.eclipsefoundation.git.eca.api.models.GithubWebhookRequest.MergeGroup; import org.eclipsefoundation.git.eca.api.models.GithubWebhookRequest.PullRequest; import org.eclipsefoundation.git.eca.api.models.GithubWebhookRequest.PullRequestHead; import org.eclipsefoundation.git.eca.api.models.GithubWebhookRequest.Repository; @@ -55,6 +56,17 @@ class GithubWebhooksResourceTest { .run(); } + @Test + void testGHWebhook_success_mergeGroup() { + EndpointTestBuilder + .from(TestCaseHelper + .prepareTestCase(GH_WEBHOOK_BASE_URL, new String[] {}, null) + .setHeaderParams(Optional.of(Map.of(WebhookHeaders.GITHUB_DELIVERY, "id-1", WebhookHeaders.GITHUB_EVENT, "merge_group"))) + .build()) + .doPost(createMergeGroupWebhookBody()) + .run(); + } + private String createGHWebhook() { try { return om.writeValueAsString(GithubWebhookRequest.builder() @@ -75,4 +87,23 @@ class GithubWebhooksResourceTest { throw new ApplicationException("Error converting Hook to JSON"); } } + + private String createMergeGroupWebhookBody() { + try { + return om.writeValueAsString(GithubWebhookRequest.builder() + .setInstallation(Installation.builder().setId("install-id").build()) + .setMergeGroup(MergeGroup + .builder() + .setHeadSha("headsha-123") + .build()) + .setRepository(Repository + .builder() + .setFullName("eclipsefdn/sample") + .setHtmlUrl("http://www.github.com/eclipsefdn/sample") + .build()) + .build()); + } catch (Exception e) { + throw new ApplicationException("Error converting Hook to JSON"); + } + } }