Ver Fonte

testcase 初始化数据方法抽象到父类(避免IDEA重复代码提醒)
增加一个自定义sql分页查询的测试用例(其实就是copy了原有的,重命名方便查询)

yuxiaobin há 7 anos atrás
pai
commit
c444847c14

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2LogicDeleteTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.util.List;
 
 import javax.sql.DataSource;
@@ -21,6 +20,7 @@ import org.springframework.web.context.support.AnnotationConfigWebApplicationCon
 import com.baomidou.mybatisplus.mapper.Condition;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.config.ServiceConfig;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2UserLogicDelete;
 import com.baomidou.mybatisplus.test.h2.service.IH2UserLogicDeleteService;
@@ -44,12 +44,7 @@ public class H2LogicDeleteTest extends H2Test {
         context.refresh();
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2MetaObjAndVersionAndOptLockTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
@@ -26,6 +25,7 @@ import org.springframework.web.context.support.AnnotationConfigWebApplicationCon
 import com.baomidou.mybatisplus.mapper.Condition;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.config.DBConfig;
 import com.baomidou.mybatisplus.test.h2.config.MybatisConfigMetaObjOptLockConfig;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserVersionAndLogicDeleteMapper;
@@ -51,12 +51,7 @@ public class H2MetaObjAndVersionAndOptLockTest extends H2Test {
         context.refresh();
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2MetaObjectHandlerTest.java

@@ -3,7 +3,6 @@ package com.baomidou.mybatisplus.test.h2;
 import java.io.IOException;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.sql.Timestamp;
 import java.util.Calendar;
 
@@ -19,6 +18,7 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserMetaobjMapper;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2UserMetaObj;
 
@@ -43,12 +43,7 @@ public class H2MetaObjectHandlerTest extends H2Test {
         ApplicationContext context = new ClassPathXmlApplicationContext("classpath:h2/spring-test-h2-metaobj.xml");
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 55 - 0
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2Pagination4SqlTest.java

@@ -0,0 +1,55 @@
+package com.baomidou.mybatisplus.test.h2;
+
+import java.io.IOException;
+import java.sql.SQLException;
+import java.util.List;
+
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
+import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserMapper;
+import com.baomidou.mybatisplus.test.h2.entity.persistent.H2Addr;
+
+/**
+ * <p>
+ * 这个方法跟{@link H2UserAddrJoinTest} 一样,
+ * 只是起名为了方便查询自定义分页查询
+ * </p>
+ *
+ * @author Caratacus
+ * @date 2017/4/1
+ */
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration(locations = {"classpath:h2/spring-test-h2.xml"})
+public class H2Pagination4SqlTest extends H2Test {
+
+    @Autowired
+    private H2UserMapper userMapper;
+
+    @BeforeClass
+    public static void initDB() throws SQLException, IOException {
+        H2UserAddrJoinTest.initDB();
+    }
+
+    @Test
+    public void testJoinTableWithoutPagination() {
+        List<H2Addr> addrList = userMapper.getAddrListByUserId(101L);
+        Assert.assertEquals(5, addrList.size());
+    }
+
+    @Test
+    public void testJoinTableWithPagination() {
+        Page<H2Addr> page = new Page<H2Addr>(0, 3);
+        List<H2Addr> addrList = userMapper.getAddrListByUserIdPage(101L, page);
+        Assert.assertNotEquals("Should have pagination info", 0, page.getTotal());
+        Assert.assertEquals(3, addrList.size());
+    }
+
+}

+ 4 - 1
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserAddrJoinTest.java

@@ -19,6 +19,7 @@ import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
 import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserMapper;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2Addr;
 
@@ -62,7 +63,9 @@ public class H2UserAddrJoinTest extends H2Test {
 
     @Test
     public void testJoinTableWithPagination() {
-        List<H2Addr> addrList = userMapper.getAddrListByUserIdPage(101L, new Page<H2Addr>(0, 3));
+        Page<H2Addr> page = new Page<H2Addr>(0, 3);
+        List<H2Addr> addrList = userMapper.getAddrListByUserIdPage(101L, page);
+        Assert.assertNotEquals("Should have pagination info", 0, page.getTotal());
         Assert.assertEquals(3, addrList.size());
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserAutoincrementTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 
 import javax.sql.DataSource;
 
@@ -18,6 +17,7 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserMetaobjMapper;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2UserMetaObj;
 import com.baomidou.mybatisplus.test.h2.service.IH2UserMetaobjService;
@@ -46,12 +46,7 @@ public class H2UserAutoincrementTest extends H2Test {
         ApplicationContext context = new ClassPathXmlApplicationContext("classpath:h2/spring-test-h2.xml");
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserDateVersionTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
@@ -22,6 +21,7 @@ import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserDateVersionMapper;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2UserDateVersion;
 
@@ -46,12 +46,7 @@ public class H2UserDateVersionTest extends H2Test {
         ApplicationContext context = new ClassPathXmlApplicationContext("classpath:h2/spring-test-h2.xml");
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserExtendsTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -23,6 +22,7 @@ import org.springframework.web.context.support.AnnotationConfigWebApplicationCon
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.config.ServiceConfig;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2UserIntVersionExtendTO;
 import com.baomidou.mybatisplus.test.h2.service.IH2UserExtendsService;
@@ -49,12 +49,7 @@ public class H2UserExtendsTest extends H2Test {
         context.refresh();
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserNoOptLockTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -24,6 +23,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2User;
 import com.baomidou.mybatisplus.test.h2.service.IH2UserService;
 
@@ -48,12 +48,7 @@ public class H2UserNoOptLockTest extends H2Test {
         ApplicationContext context = new ClassPathXmlApplicationContext("classpath:h2/spring-test-h2.xml");
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserNoVersionTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -23,6 +22,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserNoVersionMapper;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2UserNoVersion;
 import com.baomidou.mybatisplus.test.h2.service.IH2UserNoVersionService;
@@ -51,12 +51,7 @@ public class H2UserNoVersionTest extends H2Test {
         ApplicationContext context = new ClassPathXmlApplicationContext("classpath:h2/spring-test-h2.xml");
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 2 - 7
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserTest.java

@@ -4,7 +4,6 @@ import java.io.IOException;
 import java.math.BigDecimal;
 import java.sql.Connection;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -26,6 +25,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 import com.baomidou.mybatisplus.entity.Column;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2UserMapper;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2User;
 import com.baomidou.mybatisplus.test.h2.service.IH2UserService;
@@ -54,12 +54,7 @@ public class H2UserTest extends H2Test {
         ApplicationContext context = new ClassPathXmlApplicationContext("classpath:h2/spring-test-h2.xml");
         DataSource ds = (DataSource) context.getBean("dataSource");
         try (Connection conn = ds.getConnection()) {
-            String createTableSql = readFile("user.ddl.sql");
-            Statement stmt = conn.createStatement();
-            stmt.execute(createTableSql);
-            stmt.execute("truncate table h2user");
-            executeSql(stmt, "user.insert.sql");
-            conn.commit();
+            initData(conn);
         }
     }
 

+ 1 - 0
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2uuidTest.java

@@ -17,6 +17,7 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
+import com.baomidou.mybatisplus.test.h2.base.H2Test;
 import com.baomidou.mybatisplus.test.h2.entity.mapper.H2uuidMapper;
 import com.baomidou.mybatisplus.test.h2.entity.persistent.H2uuid;
 

+ 13 - 1
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/H2Test.java → mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/h2/base/H2Test.java

@@ -1,8 +1,9 @@
-package com.baomidou.mybatisplus.test.h2;
+package com.baomidou.mybatisplus.test.h2.base;
 
 import java.io.BufferedReader;
 import java.io.FileReader;
 import java.io.IOException;
+import java.sql.Connection;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.text.SimpleDateFormat;
@@ -10,6 +11,8 @@ import java.util.Date;
 
 import org.junit.Assert;
 
+import com.baomidou.mybatisplus.test.h2.H2UserNoOptLockTest;
+
 /**
  * <p>
  * Mybatis Plus H2 Junit Test
@@ -32,6 +35,15 @@ public class H2Test {
         }
     }
 
+    public static void initData(Connection conn) throws SQLException, IOException {
+        String createTableSql = readFile("user.ddl.sql");
+        Statement stmt = conn.createStatement();
+        stmt.execute(createTableSql);
+        stmt.execute("truncate table h2user");
+        executeSql(stmt, "user.insert.sql");
+        conn.commit();
+    }
+
     public static String readFile(String filename) {
         StringBuilder builder = new StringBuilder();
         String filePath = H2UserNoOptLockTest.class.getResource("/h2/" + filename).getPath();