From 973175467216d813710c89d3e207503e33a2f203 Mon Sep 17 00:00:00 2001 From: Irina Marudina Date: Wed, 25 Jan 2017 20:13:47 +0200 Subject: [PATCH 1/2] UsersServiceTest impl --- .../predcomposer/user/UsersService.java | 8 +++++ .../predcomposer/user/UsersServiceTest.java | 32 +++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 src/test/java/com/nosoftskills/predcomposer/user/UsersServiceTest.java diff --git a/src/main/java/com/nosoftskills/predcomposer/user/UsersService.java b/src/main/java/com/nosoftskills/predcomposer/user/UsersService.java index b62051a..235ac1b 100644 --- a/src/main/java/com/nosoftskills/predcomposer/user/UsersService.java +++ b/src/main/java/com/nosoftskills/predcomposer/user/UsersService.java @@ -15,6 +15,14 @@ public class UsersService { @PersistenceContext private EntityManager entityManager; + + public UsersService() { + // no init needed + } + + public UsersService(EntityManager entityManager) { + this.entityManager = entityManager; + } public List getAllUsers() { return entityManager.createNamedQuery("getAllUsers", User.class).getResultList(); diff --git a/src/test/java/com/nosoftskills/predcomposer/user/UsersServiceTest.java b/src/test/java/com/nosoftskills/predcomposer/user/UsersServiceTest.java new file mode 100644 index 0000000..db72a56 --- /dev/null +++ b/src/test/java/com/nosoftskills/predcomposer/user/UsersServiceTest.java @@ -0,0 +1,32 @@ +package com.nosoftskills.predcomposer.user; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.util.List; + +import org.junit.Test; + +import com.nosoftskills.predcomposer.common.BaseServiceTest; +import com.nosoftskills.predcomposer.model.User; + +public class UsersServiceTest extends BaseServiceTest { + + private UsersService usersService; + + @Override + protected void setupClassUnderTest() { + usersService = new UsersService(entityManager); + } + + @Test + public void test() { + List users = usersService.getAllUsers(); + + assertNotNull(users); + assertEquals(2, users.size()); + assertEquals("ivan", users.get(0).getUserName()); + assertEquals("koko", users.get(1).getUserName()); + } + +} From 9b1ceebc19ed66153ec666cda57e41ffd9dd91dd Mon Sep 17 00:00:00 2001 From: Irina Marudina Date: Wed, 25 Jan 2017 22:03:19 +0200 Subject: [PATCH 2/2] UserManagementServiceIntegrationTest impl --- .../UserManagementServiceIntegrationTest.java | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/test/java/com/nosoftskills/predcomposer/user/UserManagementServiceIntegrationTest.java diff --git a/src/test/java/com/nosoftskills/predcomposer/user/UserManagementServiceIntegrationTest.java b/src/test/java/com/nosoftskills/predcomposer/user/UserManagementServiceIntegrationTest.java new file mode 100644 index 0000000..49b63a7 --- /dev/null +++ b/src/test/java/com/nosoftskills/predcomposer/user/UserManagementServiceIntegrationTest.java @@ -0,0 +1,76 @@ +package com.nosoftskills.predcomposer.user; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.io.File; + +import javax.inject.Inject; + +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import static org.junit.Assert.*; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; + +import com.nosoftskills.predcomposer.alternatives.UserContextAlternative; +import com.nosoftskills.predcomposer.common.TestData; +import com.nosoftskills.predcomposer.model.User; +import com.nosoftskills.predcomposer.session.UserContext; + +/** + * @author Irina Marudina + */ +@RunWith(Arquillian.class) +public class UserManagementServiceIntegrationTest { + + + @Deployment + public static WebArchive createDeployment() { + WebArchive webArchive = ShrinkWrap.create(WebArchive.class, "predcomposer-test.war") + .addClass(UserManagementService.class) + .addClass(UsersService.class) + .addClasses(UserContextAlternative.class, UserContext.class, TestData.class, + PasswordHashUtil.class) + .addPackage(User.class.getPackage()) + .addAsResource(new File("src/test/resources/META-INF/persistence-scenarios.xml"), + "META-INF/persistence.xml") + .addAsWebInfResource("test-beans.xml", "beans.xml"); + System.out.println(webArchive.toString(true)); + return webArchive; + } + + @Inject + public UserManagementService userManagementService; + + @Inject + public UsersService usersService; + + @Before + public void setUp() { + User user1 = new User("imarudina", "irina-password", "public@marudina.net"); + usersService.storeUser(user1); + } + + @Test + public void shouldValidateUserWithCorrectPassword() throws Exception { + User user = userManagementService.validateUser("imarudina", "irina-password"); + assertNotNull(user); + assertEquals("imarudina", user.getUserName()); + } + + @Test + public void shouldFailOnWrongPassword() throws Exception { + User user = userManagementService.validateUser("imarudina", "blah"); + assertNull(user); + } + + @Test + public void shouldFailOnUnknownUser() throws Exception { + User user = userManagementService.validateUser("unknown_user", "blah"); + assertNull(user); + } +}