From d69316474a110a8f3c59b87ef01959455d6fe97e Mon Sep 17 00:00:00 2001 From: Yash Pal Date: Fri, 20 Dec 2024 19:18:12 +0530 Subject: [PATCH] Added tests for PublicBuildStatusAction class and fixed a typo --- .../actions/PublicBuildStatusAction.java | 2 +- .../actions/PublicBuildStatusActionTest.java | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusAction.java b/src/main/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusAction.java index 1a2c49e0a..fc6d9d7f6 100644 --- a/src/main/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusAction.java +++ b/src/main/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusAction.java @@ -162,7 +162,7 @@ public String doText( Run run = null; if (project != null && build != null) { - // as the user might have ViewStatus permission only (e.g. as anonymous) we get get the + // as the user might have ViewStatus permission only (e.g. as anonymous) we get the // project impersonate and check for permission after getting the project try (ACLContext ctx = ACL.as2(ACL.SYSTEM2)) { for (String token : build.split(",")) { diff --git a/src/test/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusActionTest.java b/src/test/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusActionTest.java index 4e536bc83..c4cbb608d 100644 --- a/src/test/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusActionTest.java +++ b/src/test/java/org/jenkinsci/plugins/badge/actions/PublicBuildStatusActionTest.java @@ -131,4 +131,29 @@ public void testGetDisplayName() throws IOException { private boolean isWindows() { return File.pathSeparatorChar == ';'; } + + @Test + public void doText_shouldReturnMissingQueryParameterWhenJobIsNull() throws IOException { + PublicBuildStatusAction action = new PublicBuildStatusAction(); + String result = action.doText(null, null, null, "123"); + assertThat(result, is("Missing query parameter: job")); + } + + @Test + public void doText_shouldReturnProjectIconColorDescription() throws Exception { + Run build = job.scheduleBuild2(0).get(); + j.assertBuildStatusSuccess(build); + String result = + new PublicBuildStatusAction().doText(null, null, job.getName(), String.valueOf(build.getNumber())); + assertThat(result, is(job.getIconColor().getDescription())); + } + + @Test + public void doText_shouldReturnRunIconColorDescription() throws Exception { + Run build = job.scheduleBuild2(0).get(); + j.assertBuildStatusSuccess(build); + String result = + new PublicBuildStatusAction().doText(null, null, job.getName(), String.valueOf(build.getNumber())); + assertThat(result, is(build.getIconColor().getDescription())); + } }