From 1c7ce8c00c6f6c5116eb1dad025ccd2d2589fa6d Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 09:26:01 +0000 Subject: [PATCH 1/5] forge: open work branch for role-developer-live-v5-001-attempt-1-run-d2eb89f97872 --- .../role-developer-live-v5-001-attempt-1-run-d2eb89f97872.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .forge/role-developer-live-v5-001-attempt-1-run-d2eb89f97872.md diff --git a/.forge/role-developer-live-v5-001-attempt-1-run-d2eb89f97872.md b/.forge/role-developer-live-v5-001-attempt-1-run-d2eb89f97872.md new file mode 100644 index 0000000..10002da --- /dev/null +++ b/.forge/role-developer-live-v5-001-attempt-1-run-d2eb89f97872.md @@ -0,0 +1,3 @@ +# role-developer-live-v5-001-attempt-1-run-d2eb89f97872 + +Forge 이슈 작업 브랜치 `forge/role-developer-live-v5-001-attempt-1-run-d2eb89f97872`. From 8a3e30370b34e29e6fcbaa7376da8bdda67f82b3 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 09:26:10 +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-v5-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..267a115 --- /dev/null +++ b/pom.xml @@ -0,0 +1,39 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.2.5 + + + com.developer + runtime-role-matrix-live-202607141836-v5 + 1.0.0 + runtime-role-matrix-live-202607141836-v5 + Developer role Spring Boot skeleton + + 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 e73f57558db0dac45b74fbd8be2440952cf446d2 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 09:26:11 +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-v5-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/developer/DeveloperApplication.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 src/main/java/com/developer/DeveloperApplication.java diff --git a/src/main/java/com/developer/DeveloperApplication.java b/src/main/java/com/developer/DeveloperApplication.java new file mode 100644 index 0000000..086200e --- /dev/null +++ b/src/main/java/com/developer/DeveloperApplication.java @@ -0,0 +1,12 @@ +package com.developer; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class DeveloperApplication { + + public static void main(String[] args) { + SpringApplication.run(DeveloperApplication.class, args); + } +} From c4535e1d1b325a882890b77713498be2cde0e0a6 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 09:26:12 +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-v5-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/developer/DeveloperService.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/main/java/com/developer/DeveloperService.java diff --git a/src/main/java/com/developer/DeveloperService.java b/src/main/java/com/developer/DeveloperService.java new file mode 100644 index 0000000..4aca9b2 --- /dev/null +++ b/src/main/java/com/developer/DeveloperService.java @@ -0,0 +1,22 @@ +package com.developer; + +import org.springframework.stereotype.Service; + +@Service +public class DeveloperService { + + public String getRole() { + return "developer"; + } + + public String greet(String name) { + if (name == null || name.isBlank()) { + return "Hello, Developer!"; + } + return "Hello, " + name + "!"; + } + + public boolean isValidRole(String role) { + return "developer".equalsIgnoreCase(role); + } +} From 942570ecd55cc580dede0e823516858eb604d935 Mon Sep 17 00:00:00 2001 From: forge-bot Date: Tue, 14 Jul 2026 09:26:14 +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-v5-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/developer/DeveloperServiceTest.java | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/test/java/com/developer/DeveloperServiceTest.java diff --git a/src/test/java/com/developer/DeveloperServiceTest.java b/src/test/java/com/developer/DeveloperServiceTest.java new file mode 100644 index 0000000..967e26a --- /dev/null +++ b/src/test/java/com/developer/DeveloperServiceTest.java @@ -0,0 +1,45 @@ +package com.developer; + +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 getRole_returnsDeveloper() { + assertEquals("developer", developerService.getRole()); + } + + @Test + void greet_withName_returnsPersonalizedGreeting() { + assertEquals("Hello, Alice!", developerService.greet("Alice")); + } + + @Test + void greet_withNullOrBlank_returnsDefaultGreeting() { + assertEquals("Hello, Developer!", developerService.greet(null)); + assertEquals("Hello, Developer!", developerService.greet("")); + assertEquals("Hello, Developer!", developerService.greet(" ")); + } + + @Test + void isValidRole_withDeveloper_returnsTrue() { + assertTrue(developerService.isValidRole("developer")); + assertTrue(developerService.isValidRole("DEVELOPER")); + assertTrue(developerService.isValidRole("Developer")); + } + + @Test + void isValidRole_withOtherRole_returnsFalse() { + assertFalse(developerService.isValidRole("admin")); + assertFalse(developerService.isValidRole("user")); + assertFalse(developerService.isValidRole(null)); + } +}