From 5b79d702bf5a4ff767f1d234717889844612bf04 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 08:00:24 +0000 Subject: [PATCH 1/5] forge: open work branch for role-developer-live-v2-001-attempt-1-run-9e6f13ecd795 --- .../role-developer-live-v2-001-attempt-1-run-9e6f13ecd795.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .forge/role-developer-live-v2-001-attempt-1-run-9e6f13ecd795.md diff --git a/.forge/role-developer-live-v2-001-attempt-1-run-9e6f13ecd795.md b/.forge/role-developer-live-v2-001-attempt-1-run-9e6f13ecd795.md new file mode 100644 index 0000000..42ef3bc --- /dev/null +++ b/.forge/role-developer-live-v2-001-attempt-1-run-9e6f13ecd795.md @@ -0,0 +1,3 @@ +# role-developer-live-v2-001-attempt-1-run-9e6f13ecd795 + +Forge 이슈 작업 브랜치 `forge/role-developer-live-v2-001-attempt-1-run-9e6f13ecd795`. From 140b6154a6efc8f3f94880148c74d868e28db8d7 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 08:00:33 +0000 Subject: [PATCH 2/5] =?UTF-8?q?Developer=20=EC=97=AD=ED=95=A0=20Spring=20?= =?UTF-8?q?=EA=B3=A8=EA=B2=A9=20smoke=20(role-developer-live-v2-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 pom.xml diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..2cf457b --- /dev/null +++ b/pom.xml @@ -0,0 +1,39 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.2.5 + + + com.example + developer-role-smoke + 1.0.0-SNAPSHOT + Developer Role Smoke Test + Spring Boot skeleton for Developer role smoke test + + 17 + + + + org.springframework.boot + spring-boot-starter + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + \ No newline at end of file From 440a4bf972bd9a20367fb30dc6304fb7ac407696 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 08:00:34 +0000 Subject: [PATCH 3/5] =?UTF-8?q?Developer=20=EC=97=AD=ED=95=A0=20Spring=20?= =?UTF-8?q?=EA=B3=A8=EA=B2=A9=20smoke=20(role-developer-live-v2-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../developer/DeveloperRoleSmokeApplication.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 src/main/java/com/example/developer/DeveloperRoleSmokeApplication.java diff --git a/src/main/java/com/example/developer/DeveloperRoleSmokeApplication.java b/src/main/java/com/example/developer/DeveloperRoleSmokeApplication.java new file mode 100644 index 0000000..c84ebb8 --- /dev/null +++ b/src/main/java/com/example/developer/DeveloperRoleSmokeApplication.java @@ -0,0 +1,12 @@ +package com.example.developer; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class DeveloperRoleSmokeApplication { + + public static void main(String[] args) { + SpringApplication.run(DeveloperRoleSmokeApplication.class, args); + } +} From 181ae041093827ecb985520330e283e63f348944 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 08:00:35 +0000 Subject: [PATCH 4/5] =?UTF-8?q?Developer=20=EC=97=AD=ED=95=A0=20Spring=20?= =?UTF-8?q?=EA=B3=A8=EA=B2=A9=20smoke=20(role-developer-live-v2-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../developer/service/DeveloperService.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 src/main/java/com/example/developer/service/DeveloperService.java diff --git a/src/main/java/com/example/developer/service/DeveloperService.java b/src/main/java/com/example/developer/service/DeveloperService.java new file mode 100644 index 0000000..241208c --- /dev/null +++ b/src/main/java/com/example/developer/service/DeveloperService.java @@ -0,0 +1,15 @@ +package com.example.developer.service; + +import org.springframework.stereotype.Service; + +@Service +public class DeveloperService { + + public String getRole() { + return "DEVELOPER"; + } + + public boolean isAuthorized(String action) { + return "code".equals(action) || "review".equals(action) || "deploy".equals(action); + } +} From 4329c6109c826c3972645c01430a6309316b2b97 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 08:00:36 +0000 Subject: [PATCH 5/5] =?UTF-8?q?Developer=20=EC=97=AD=ED=95=A0=20Spring=20?= =?UTF-8?q?=EA=B3=A8=EA=B2=A9=20smoke=20(role-developer-live-v2-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/DeveloperServiceTest.java | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/test/java/com/example/developer/service/DeveloperServiceTest.java diff --git a/src/test/java/com/example/developer/service/DeveloperServiceTest.java b/src/test/java/com/example/developer/service/DeveloperServiceTest.java new file mode 100644 index 0000000..8e8e303 --- /dev/null +++ b/src/test/java/com/example/developer/service/DeveloperServiceTest.java @@ -0,0 +1,44 @@ +package com.example.developer.service; + +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import static org.junit.jupiter.api.Assertions.*; + +@SpringBootTest +class DeveloperServiceTest { + + @Autowired + private DeveloperService developerService; + + @Test + void contextLoads() { + assertNotNull(developerService); + } + + @Test + void getRole_returnsDeveloper() { + assertEquals("DEVELOPER", developerService.getRole()); + } + + @Test + void isAuthorized_forCodeAction_returnsTrue() { + assertTrue(developerService.isAuthorized("code")); + } + + @Test + void isAuthorized_forReviewAction_returnsTrue() { + assertTrue(developerService.isAuthorized("review")); + } + + @Test + void isAuthorized_forDeployAction_returnsTrue() { + assertTrue(developerService.isAuthorized("deploy")); + } + + @Test + void isAuthorized_forUnknownAction_returnsFalse() { + assertFalse(developerService.isAuthorized("admin")); + } +}