sysprops.put("derby.storage.keepTransactionLog", "true");
sysprops.put("derby.language.logStatementText", "true");
sysprops.put("derby.infolog.append", "true");
Test embedded = new TestSuite(StressMultiTest.class);
embedded = new SystemPropertyTestSetup(embedded,sysprops,true);
embedded = new DatabasePropertyTestSetup(embedded,dbprops);
// make this a singleUseDatabase so the datbase and
// transaction log will be preserved.
embedded = TestConfiguration.singleUseDatabaseDecorator(newCleanDatabase(embedded));
// SystemPropertyTestSetup for static properties
// does not work for client because shutting down the
// engine causes protocol errors on the client. Run
// with -Dderby.storage.keepTransactionLog=true if
// you need to save the transaction log for client.
Test client = TestConfiguration.clientServerDecorator(
new TestSuite(StressMultiTest.class));
client = newCleanDatabase(new DatabasePropertyTestSetup(client,dbprops));
Test encrypted = new TestSuite(StressMultiTest.class);
// SystemPropertyTestSetup for static properties
// does not work for encrypted databases because the
// database has to be rebooted and we don't have access
// to the boot password (local to Decorator.encryptedDatabase()
// Run with -Dderby.storage.keepTransactionLog=true if you
// need to save the transaction log for encrypted.
TestSuite unencrypted = new TestSuite("StressMultiTest:unencrypted");
unencrypted.addTest((embedded));
unencrypted.addTest((client));
TestSuite suite = new TestSuite("StressMultiTest, " + THREADS +
" Threads " + MINUTES + " Minutes");
suite.addTest(newCleanDatabase(unencrypted));
//Encrypted uses a different database so it needs its own newCleanDatabase
suite.addTest(Decorator.encryptedDatabase(new DatabasePropertyTestSetup(newCleanDatabase(encrypted),dbprops)));
return suite;
}