Advertisement
Guest User

Untitled

a guest
Feb 2nd, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.81 KB | None | 0 0
  1. RunWith(SpringJUnit4ClassRunner.class)
  2. @ContextConfiguration
  3. @TestExecutionListeners({ DependencyInjectionTestExecutionListener.class, DirtiesContextTestExecutionListener.class,
  4. TransactionalTestExecutionListener.class, DbUnitTestExecutionListener.class })
  5. @DatabaseSetup(value = "login.xml")
  6. public class LoginControllerTest2 {
  7.  
  8. private static final String JDBC_DRIVER = "org.h2.Driver";
  9. private static final String JDBC_URL = "jdbc:h2:mem:test;DB_CLOSE_DELAY=-1";
  10. private static final String USER = "sa";
  11. private static final String PASS = "";
  12. private static final String SCHEMA_FILE = "../sql/h2.sql";
  13. private static final String DATASET = "login.xml";
  14.  
  15. private MockMvc mockMvc;
  16.  
  17. @BeforeClass
  18. public static void createSchema() throws ClassNotFoundException {
  19. Class.forName(JDBC_DRIVER);
  20. try {
  21. Connection conn = dataSource().getConnection();
  22. InputStreamReader in = new InputStreamReader(LoginControllerTest2.class.getResourceAsStream(SCHEMA_FILE));
  23. RunScript.execute(conn, in);
  24. } catch (Exception e) {
  25. // TODO: handle exception
  26. }
  27. }
  28.  
  29. @Before
  30. public void loadTestData() throws Exception {
  31. IDataSet ids = new FlatXmlDataSetBuilder().build(LoginControllerTest2.class.getResourceAsStream(DATASET));
  32. IDatabaseTester databaseTester = new JdbcDatabaseTester(JDBC_DRIVER, JDBC_URL, USER, PASS);
  33. databaseTester.setSetUpOperation(org.dbunit.operation.DatabaseOperation.CLEAN_INSERT);
  34. databaseTester.setDataSet(ids);
  35. databaseTester.onSetup();
  36. }
  37.  
  38. private static DataSource dataSource() {
  39. JdbcDataSource dataSource = new JdbcDataSource();
  40. dataSource.setURL(JDBC_URL);
  41. dataSource.setUser(USER);
  42. dataSource.setPassword(PASS);
  43. return dataSource;
  44. }
  45.  
  46. @Test
  47. @ExpectedDatabase("login.xml")
  48. public void testShowForm() throws Exception {
  49. mockMvc.perform(get("/login")).andExpect(status().isOk()).andExpect(view().name("/login"))
  50. .andExpect(forwardedUrl("../../WebContent/j/login.jsp"))
  51. .andExpect(model().attribute("form", hasProperty("id", nullValue())))
  52. .andExpect(model().attribute("form", hasProperty("email", isEmptyOrNullString())))
  53. .andExpect(model().attribute("form", hasProperty("username", isEmptyOrNullString())))
  54. .andExpect(model().attribute("form", hasProperty("hostname", isEmptyOrNullString())))
  55. .andExpect(model().attribute("form", hasProperty("pass", isEmptyOrNullString())));
  56. }
  57.  
  58. }
  59.  
  60. <?xml version="1.0" encoding="UTF-8"?>
  61. <beans xmlns="http://www.springframework.org/schema/beans"
  62. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
  63. xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:context="http://www.springframework.org/schema/context"
  64. xmlns:tx="http://www.springframework.org/schema/tx"
  65. xsi:schemaLocation="http://www.springframework.org/schema/beans
  66. http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/task
  67. http://www.springframework.org/schema/task/spring-task-3.2.xsd
  68. http://www.springframework.org/schema/mvc
  69. http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
  70. http://www.springframework.org/schema/beans
  71. http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
  72. http://www.springframework.org/schema/context
  73. http://www.springframework.org/schema/context/spring-context-3.2.xsd
  74. http://www.springframework.org/schema/tx
  75. http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">
  76.  
  77. <tx:annotation-driven transaction-manager="transactionManager" />
  78. <context:component-scan base-package="test.loginController" />
  79.  
  80. <bean id="dataSource"
  81. class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy">
  82. <constructor-arg>
  83. <bean class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
  84. <property name="driverClass" value="org.h2.Driver" />
  85. <property name="url"
  86. value="jdbc:h2:mem:login;DB_CLOSE_DELAY=-1;TRACE_LEVEL_SYSTEM_OUT=2;TRACE_LEVEL_FILE=4" />
  87. </bean>
  88. </constructor-arg>
  89. </bean>
  90. </beans>
  91.  
  92. 2016-02-02 13:38:12 jdbc[3]:
  93. /*SQL t:1*/SET TRACE_LEVEL_FILE 4;
  94. 2016-02-02 13:38:12 jdbc[3]:
  95. /*SQL t:1*/SET DB_CLOSE_DELAY -1;
  96. 2016-02-02 13:38:12 jdbc[3]:
  97. /**/Connection conn1 = DriverManager.getConnection("jdbc:h2:mem:login;DB_CLOSE_DELAY=-1;TRACE_LEVEL_SYSTEM_OUT=2;TRACE_LEVEL_FILE=4", "", "");
  98. 2016-02-02 13:38:12 jdbc[3]: null
  99. 2016-02-02 13:38:12 jdbc[3]:
  100. /*SQL #:1 t:1*/CALL LOCK_MODE();
  101. 2016-02-02 13:38:12 database: disconnecting session #3
  102. 2016-02-02 13:38:12 database: connecting session #4 to mem:login
  103. 2016-02-02 13:38:12 database: disconnecting session #4
  104. 2016-02-02 13:38:12 database: closing mem:login
  105. 2016-02-02 13:38:12 database: closed
  106.  
  107. org.dbunit.dataset.NoSuchTableException: login
  108. at org.dbunit.database.DatabaseDataSet.getTableMetaData(DatabaseDataSet.java:288)
  109. at org.dbunit.operation.DeleteAllOperation.execute(DeleteAllOperation.java:109)
  110. at org.dbunit.operation.CompositeOperation.execute(CompositeOperation.java:79)
  111. at com.github.springtestdbunit.DbUnitRunner.setupOrTeardown(DbUnitRunner.java:159)
  112. at com.github.springtestdbunit.DbUnitRunner.beforeTestMethod(DbUnitRunner.java:70)
  113. at com.github.springtestdbunit.DbUnitTestExecutionListener.beforeTestMethod(DbUnitTestExecutionListener.java:136)
  114. at org.springframework.test.context.TestContextManager.beforeTestMethod(TestContextManager.java:277)
  115. at org.springframework.test.context.junit4.SpringMethodRoadie.runBefores(SpringMethodRoadie.java:315)
  116. at org.springframework.test.context.junit4.SpringMethodRoadie.runBeforesThenTestThenAfters(SpringMethodRoadie.java:253)
  117. at org.springframework.test.context.junit4.SpringMethodRoadie.runWithRepetitions(SpringMethodRoadie.java:234)
  118. at org.springframework.test.context.junit4.SpringMethodRoadie.runTest(SpringMethodRoadie.java:204)
  119. at org.springframework.test.context.junit4.SpringMethodRoadie.run(SpringMethodRoadie.java:146)
  120. at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.invokeTestMethod(SpringJUnit4ClassRunner.java:151)
  121. at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
  122. at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
  123. at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
  124. at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
  125. at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
  126. at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
  127. at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
  128. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
  129. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
  130. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
  131. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
  132.  
  133. junit.framework.ComparisonFailure: table count expected:<[1]> but was:<[0]>
  134. at org.dbunit.assertion.JUnitFailureFactory.createFailure(JUnitFailureFactory.java:39)
  135. at org.dbunit.assertion.DefaultFailureHandler.createFailure(DefaultFailureHandler.java:105)
  136. at org.dbunit.assertion.DbUnitAssert.assertEquals(DbUnitAssert.java:237)
  137. at org.dbunit.assertion.DbUnitAssert.assertEquals(DbUnitAssert.java:205)
  138. at org.dbunit.Assertion.assertEquals(Assertion.java:104)
  139. at com.github.springtestdbunit.assertion.DefaultDatabaseAssertion.assertEquals(DefaultDatabaseAssertion.java:33)
  140. at com.github.springtestdbunit.DbUnitRunner.verifyExpected(DbUnitRunner.java:128)
  141. at com.github.springtestdbunit.DbUnitRunner.afterTestMethod(DbUnitRunner.java:80)
  142. at com.github.springtestdbunit.DbUnitTestExecutionListener.afterTestMethod(DbUnitTestExecutionListener.java:141)
  143. at org.springframework.test.context.TestContextManager.afterTestMethod(TestContextManager.java:340)
  144. at org.springframework.test.context.junit4.SpringMethodRoadie.runAfters(SpringMethodRoadie.java:351)
  145. at org.springframework.test.context.junit4.SpringMethodRoadie.runBeforesThenTestThenAfters(SpringMethodRoadie.java:262)
  146. at org.springframework.test.context.junit4.SpringMethodRoadie.runWithRepetitions(SpringMethodRoadie.java:234)
  147. at org.springframework.test.context.junit4.SpringMethodRoadie.runTest(SpringMethodRoadie.java:204)
  148. at org.springframework.test.context.junit4.SpringMethodRoadie.run(SpringMethodRoadie.java:146)
  149. at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.invokeTestMethod(SpringJUnit4ClassRunner.java:151)
  150. at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
  151. at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
  152. at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
  153. at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
  154. at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
  155. at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
  156. at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
  157. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
  158. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
  159. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
  160. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement