]> source.dussan.org Git - vaadin-framework.git/commitdiff
Fix broken TableScrollingWithSQLContainer test UI
authorTeemu Suo-Anttila <teemusa@vaadin.com>
Tue, 25 Feb 2014 10:31:29 +0000 (12:31 +0200)
committerTeemu Suo-Anttila <teemusa@vaadin.com>
Tue, 25 Feb 2014 10:31:29 +0000 (12:31 +0200)
Change-Id: I67bcb7a473d147c46e24cb3c116fd9115a3bda6b

uitest/src/com/vaadin/tests/components/table/TableScrollingWithSQLContainer.java

index f6a6f24021a20507f77c1bd36000f0ef8a129954..764207ff13a0683192428f6127621290cbd6578a 100644 (file)
@@ -1,13 +1,15 @@
 package com.vaadin.tests.components.table;
 
+import java.sql.Connection;
 import java.sql.SQLException;
+import java.sql.Statement;
 
-import com.vaadin.data.util.sqlcontainer.DataGenerator;
 import com.vaadin.data.util.sqlcontainer.SQLContainer;
-import com.vaadin.data.util.sqlcontainer.SQLTestsConstants;
+import com.vaadin.data.util.sqlcontainer.connection.JDBCConnectionPool;
 import com.vaadin.data.util.sqlcontainer.connection.SimpleJDBCConnectionPool;
 import com.vaadin.data.util.sqlcontainer.query.QueryDelegate;
 import com.vaadin.data.util.sqlcontainer.query.TableQuery;
+import com.vaadin.data.util.sqlcontainer.query.generator.DefaultSQLGenerator;
 import com.vaadin.server.VaadinRequest;
 import com.vaadin.ui.Button;
 import com.vaadin.ui.Button.ClickEvent;
@@ -32,19 +34,42 @@ public class TableScrollingWithSQLContainer extends UI {
         }
     }
 
+    private void generateTestData(JDBCConnectionPool connectionPool)
+            throws SQLException {
+        Connection conn = connectionPool.reserveConnection();
+        Statement statement = conn.createStatement();
+        try {
+            statement.execute("drop table PEOPLE");
+        } catch (SQLException e) {
+            // Will fail if table doesn't exist, which is OK.
+            conn.rollback();
+        }
+        statement
+                .execute("create table people (id integer generated always as identity,"
+                        + " name varchar(32), AGE INTEGER)");
+        statement.execute("alter table people add primary key (id)");
+        for (int i = 0; i < 5000; i++) {
+            statement
+                    .executeUpdate("insert into people values(default, 'Person "
+                            + i + "', '" + i % 99 + "')");
+        }
+        statement.close();
+        conn.commit();
+        connectionPool.releaseConnection(conn);
+    }
+
     static final String TABLE = "table";
 
     @Override
     public void init(VaadinRequest request) {
         try {
             SimpleJDBCConnectionPool connectionPool = new SimpleJDBCConnectionPool(
-                    SQLTestsConstants.dbDriver, SQLTestsConstants.dbURL,
-                    SQLTestsConstants.dbUser, SQLTestsConstants.dbPwd, 2, 2);
-            DataGenerator.addPeopleToDatabase(connectionPool);
-            DataGenerator.addFiveThousandPeople(connectionPool);
+                    "org.hsqldb.jdbc.JDBCDriver",
+                    "jdbc:hsqldb:mem:sqlcontainer", "SA", "", 2, 20);
+            generateTestData(connectionPool);
 
             TableQuery query = new TableQuery("people", connectionPool,
-                    SQLTestsConstants.sqlGen);
+                    new DefaultSQLGenerator());
 
             SQLContainer container = new LimitedSQLContainer(query);