WIP:site
[hibernate4-maven-plugin] / src / it / hmp-testclasses-annotationscanning / src / test / java / net / java / examples / hmp / model / domain / userchangeinfo / test / UserChangeInfoTest.java
1 package net.java.examples.hmp.model.domain.userchangeinfo.test;\r
2 \r
3 import static org.assertj.core.api.Assertions.assertThat;\r
4 \r
5 import javax.inject.Inject;\r
6 \r
7 import org.jboss.arquillian.container.test.api.Deployment;\r
8 import org.jboss.arquillian.junit.Arquillian;\r
9 import org.jboss.arquillian.persistence.UsingDataSet;\r
10 import org.jboss.shrinkwrap.api.spec.WebArchive;\r
11 import org.junit.Test;\r
12 import org.junit.runner.RunWith;\r
13 import org.slf4j.Logger;\r
14 import org.slf4j.LoggerFactory;\r
15 \r
16 import net.java.examples.hmp.model.domain.callback.UserChangeTrackListener;\r
17 import net.java.examples.hmp.model.domain.extension.IUserChangeInfo;\r
18 import net.java.examples.hmp.model.test.userchangeinfo.UserChangeInfoTestEntity;\r
19 import net.java.examples.hmp.service.IUserChangeInfoTestService;\r
20 import net.java.examples.hmp.test.util.BaseDeploymentPackage;\r
21 \r
22 @RunWith(Arquillian.class)\r
23 @UsingDataSet("datasets/userchangeinfo/userchangeinfo.json")\r
24 public class UserChangeInfoTest {\r
25 \r
26     private static final Logger LOG = LoggerFactory.getLogger(UserChangeInfoTest.class);\r
27 \r
28     @Inject\r
29     private IUserChangeInfoTestService userChangeInfoTestService;\r
30 \r
31     @Deployment\r
32     public static WebArchive createDeploymentPackage() {\r
33         BaseDeploymentPackage deploymentPackage = new BaseDeploymentPackage() //\r
34                 .createStandardDeploymentPackage() //\r
35                 .addTestPersistence() //\r
36                 .addPackagesModel() //\r
37                 .addPackageTestModel() //\r
38                 .addPackagesUserChangeTrack() //\r
39                 .addPackagesTestServices();\r
40 \r
41         LOG.debug(deploymentPackage.toString());\r
42         return deploymentPackage.getWAR();\r
43     }\r
44 \r
45     @Test\r
46     public void saveAndLoadWithDefaultUser() {\r
47         UserChangeInfoTestEntity userChangeInfoTestEntity = createAndPersistTestEntity();\r
48 \r
49         userChangeInfoTestEntity = this.userChangeInfoTestService.getData(userChangeInfoTestEntity.getId());\r
50         IUserChangeInfo userChangeInfo = userChangeInfoTestEntity.getUserChangeInfo();\r
51 \r
52         assertThat("junit-test").isEqualTo(userChangeInfoTestEntity.getName());\r
53 \r
54         assertThat(userChangeInfo.getCreateUser()).isEqualTo(UserChangeTrackListener.DEFAULT_USER_NAME);\r
55         assertThat(userChangeInfo.getChangeUser()).isEqualTo(UserChangeTrackListener.DEFAULT_USER_NAME);\r
56 \r
57         assertThat(userChangeInfo.getCreateDate()).isNotNull();\r
58         assertThat(userChangeInfo.getChangeDate()).isNotNull();\r
59         assertThat(userChangeInfo.getCreateDate().getTime()).isEqualTo(userChangeInfo.getChangeDate().getTime());\r
60     }\r
61 \r
62     private UserChangeInfoTestEntity createAndPersistTestEntity() {\r
63         UserChangeInfoTestEntity userChangeInfoTestEntity = new UserChangeInfoTestEntity();\r
64         userChangeInfoTestEntity.setName("junit-test");\r
65 \r
66         this.userChangeInfoTestService.persistData(userChangeInfoTestEntity);\r
67 \r
68         return userChangeInfoTestEntity;\r
69     }\r
70 \r
71     @Test\r
72     public void getUserChangeInfoTestEntityExpectingUserChangeInfoObjectNotNull() {\r
73         UserChangeInfoTestEntity userChangeInfoTestEntity = this.userChangeInfoTestService.getData(new Long(1002));\r
74 \r
75         assertThat(userChangeInfoTestEntity).isNotNull();\r
76         assertThat(userChangeInfoTestEntity.getName()).isEqualTo("Testentity - alle UserChangeInfoFelder sind null");\r
77 \r
78         assertThat(userChangeInfoTestEntity.getUserChangeInfo()).isNotNull();\r
79         assertThat(userChangeInfoTestEntity.getUserChangeInfo().getCreateUser()).isNull();\r
80         assertThat(userChangeInfoTestEntity.getUserChangeInfo().getCreateDate()).isNull();\r
81         assertThat(userChangeInfoTestEntity.getUserChangeInfo().getChangeUser()).isNull();\r
82         assertThat(userChangeInfoTestEntity.getUserChangeInfo().getChangeDate()).isNull();\r
83     }\r
84 }\r