If it helps, here is one of my test classes that used RunScript to load
data:
public abstract class TestDatabaseBase extends TestBase
{
private static final Log log =
LogFactory.getLog(TestDatabaseBase.class);
@BeforeClass
public static void loadSQL() throws SQLException
{
log.info("Loading Organizations.");
RunScript.execute(CayenneUtils.getDataNodeConnection(CayenneUtils.createDataContext()),
new
InputStreamReader(ClassLoader.getSystemResourceAsStream("sql/organizations.sql")));
log.info("Loading Organizational Units.");
RunScript.execute(CayenneUtils.getDataNodeConnection(CayenneUtils.createDataContext()),
new
InputStreamReader(ClassLoader.getSystemResourceAsStream("sql/organizational_units.sql")));
}
}
(Let me know if you need CayenneUtils.getDataNodeConnection() ...)
Part of my organizations.sql file:
insert into s_organizations
(pk, code, name, smca)
values
(100, 'ARMY', 'Army', 1),
(101, 'NAVY', 'Navy', 1),
(102, 'AF', 'Air Force', 1),
...........
(???, '???', '???', 0); -- close it off
UPDATE AUTO_PK_SUPPORT SET NEXT_ID = 160 WHERE TABLE_NAME =
'l_organizations';
mrg
On Thu, Mar 17, 2016 at 9:33 AM, Hugi Thordarson <[email protected]> wrote:
>
> Thanks, Michael and Ari! I’m going to look at both this and DBUnit (I’m
currently using H2 so RunScript looks like it might fit the bill).
>
> Cheers,
> - hugi
>
>
>
>
> > On 16. mar. 2016, at 22:22, Michael Gentry <[email protected]>
wrote:
> >
> > For H2, I've used:
> >
> > http://www.h2database.com/javadoc/org/h2/tools/RunScript.html
> >
> > Then create some SQL scripts with bulk inserts of test data.
> >
> > mrg
> >
> >
> > On Wed, Mar 16, 2016 at 6:31 AM, Hugi Thordarson <[email protected]>
wrote:
> >
> >> Hi all.
> >>
> >> Just out of curiosity; how are you guys populating your test DBs before
> >> running tests? Has anyone written something brilliant to do it with
e.g.
> >> .yml-files (via Cayenne)? Are you doing it via SQL-scripts? In code
perhaps?
> >>
> >> I’m currently creating my test DBs in code (using Cayenne) and it
becomes
> >> cumbersome when they reach a certain size :).
> >>
> >> Cheers,
> >> - hugi
>