From 8cca2127e0e11486cc45ae1a8198bd778301f935 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Mon, 19 Aug 2013 19:45:28 +0200 Subject: o Dropping the Sequences class. Moving more stuff into SqlUnit to make it easier available in a generic form. o Fixing the complicated cases where the generation got confused with both setter and constructor injection. --- myapp/pom.xml | 4 ++-- .../trygvis/container/myapp/AddressBookDirect.java | 13 +++++------ .../trygvis/container/myapp/AddressBookTest.java | 26 ++++++++++++++++++++++ 3 files changed, 33 insertions(+), 10 deletions(-) create mode 100644 myapp/src/test/java/io/trygvis/container/myapp/AddressBookTest.java (limited to 'myapp') diff --git a/myapp/pom.xml b/myapp/pom.xml index 8084e3e..b8024cb 100644 --- a/myapp/pom.xml +++ b/myapp/pom.xml @@ -31,9 +31,9 @@ maven-compiler-plugin - + io.trygvis.container.compiler.MyProcessor - + diff --git a/myapp/src/main/java/io/trygvis/container/myapp/AddressBookDirect.java b/myapp/src/main/java/io/trygvis/container/myapp/AddressBookDirect.java index 7cb6b54..cd76c84 100644 --- a/myapp/src/main/java/io/trygvis/container/myapp/AddressBookDirect.java +++ b/myapp/src/main/java/io/trygvis/container/myapp/AddressBookDirect.java @@ -23,6 +23,7 @@ public class AddressBookDirect { sessionFactory = new MyAppSqlSessionFactory(new DriverManagerDataSource(jdbcUrl)); new AddressBookDirect().work(); } catch (EOFException ignore) { + // Happens when the user closes stdin. } } @@ -89,19 +90,15 @@ public class AddressBookDirect { } public void create() throws SQLException { - session.executeUpdate(CompanyDao.createTableSql); - session.executeUpdate(ContactDao.createTableSql); - for (String sql : Sequences.createSequences) { - session.executeUpdate(sql); + for (String s : sessionFactory.getUnit().create()) { + session.executeUpdate(s); } } public void drop() throws SQLException { - for (String sql : Sequences.dropSequences) { - session.executeUpdate(sql); + for (String s : sessionFactory.getUnit().drop()) { + session.executeUpdate(s); } - session.executeUpdate(ContactDao.dropTableSql); - session.executeUpdate(CompanyDao.dropTableSql); } // ----------------------------------------------------------------------- diff --git a/myapp/src/test/java/io/trygvis/container/myapp/AddressBookTest.java b/myapp/src/test/java/io/trygvis/container/myapp/AddressBookTest.java new file mode 100644 index 0000000..4757b54 --- /dev/null +++ b/myapp/src/test/java/io/trygvis/container/myapp/AddressBookTest.java @@ -0,0 +1,26 @@ +package io.trygvis.container.myapp; + +import org.testng.annotations.Test; + +import static org.fest.assertions.Assertions.assertThat; + +public class AddressBookTest { + @Test + public void testBasic() throws Exception { + String jdbcUrl = "jdbc:h2:mem:address-book;DB_CLOSE_DELAY=-1"; + MyAppSqlSessionFactory sessionFactory = new MyAppSqlSessionFactory(new DriverManagerDataSource(jdbcUrl)); + + MyAppSqlSession session = sessionFactory.newSession(); + + for (String s : sessionFactory.getUnit().create()) { + session.executeUpdate(s); + } + session.close(); + + session = sessionFactory.newSession(); + session.company.insert(new Company("My Company")); + + Company company = session.company.selectById(1l); + assertThat(company.name).isEqualTo("My Company"); + } +} -- cgit v1.2.3