public class Derby2017LayerATest extends BaseJDBCTestCase
The test uses various combinations of auto-commit and rollback.
| Modifier and Type | Class and Description |
|---|---|
static class |
Derby2017LayerATest.FailingReader
WARNING: This reader is not a general purpose reader!!!
|
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
UTF8
The encoding used when generating a byte array from a string.
|
DEFAULT_DB_DIR, DERBY_LOG, ERRORSTACKTRACEFILE| Constructor and Description |
|---|
Derby2017LayerATest(java.lang.String name) |
| Modifier and Type | Method and Description |
|---|---|
void |
cs_FailedStreamInsertCharBufferBoundaries()
Runs some failing inserts around buffer boundaries.
|
void |
cs_StreamInsertCharBufferBoundary()
Tests inserts around some selected buffer boundaries.
|
private void |
doInsertTest(byte[][] INSERT,
java.lang.String[][] MASTER,
boolean autoCommit,
boolean rollbackOnError)
Performs the base test cycle; insert 3 valid rows, try to insert 2
invalid rows, insert 2 valid rows.
|
private void |
doInsertTest(int[] INSERT,
boolean autoCommit,
boolean rollbackOnError)
Performs the base test cycle; insert 3 valid rows, try to insert 2
invalid rows, insert 2 valid rows.
|
private void |
doInsertTest(java.lang.String[] INSERT,
java.lang.String[][] MASTER,
boolean autoCommit,
boolean rollbackOnError)
Performs the base test cycle; insert 3 valid rows, try to insert 2
invalid rows, insert 2 valid rows.
|
static byte[][] |
generateDefaultInsert()
Helper method returning the default bytes used for testing binary data.
|
static java.lang.String[][] |
generateMaster(byte[][] insert,
int[] excludes)
Helper method returning a string array with the expected values from the
database (based on the values inserted).
|
static junit.framework.Test |
suite()
Returns a suite running most of the tests with both the client driver
and the embedded driver, and some of the tests only with the client
driver.
|
void |
testFailedStreamInsertBinary() |
void |
testFailedStreamInsertBinaryAutoCommit() |
void |
testFailedStreamInsertBinaryAutoCommitRollbackOnError() |
void |
testFailedStreamInsertBinaryRollbackOnError() |
void |
testFailedStreamInsertChar() |
void |
testFailedStreamInsertCharAutoCommit() |
void |
testFailedStreamInsertCharAutoCommitRollbackOnError() |
void |
testFailedStreamInsertCharIOException()
Inserts data by reading from streams, where two of these will thrown
an
IOException. |
void |
testFailedStreamInsertCharLong() |
void |
testFailedStreamInsertCharRollbackOnError() |
assertCallError, assertCheckTable, assertCompileError, assertEquals, assertEquals, assertEquals, assertEquivalentDataType, assertErrorCode, assertGetIntError, assertNextError, assertPreparedStatementError, assertSQLExceptionEquals, assertSQLState, assertSQLState, assertStatementError, assertStatementError, assertStatementError, assertStatementError, assertStatementErrorUnordered, assertTableRowCount, assertUpdateCount, assertUpdateCount, assertWarning, checkAllConsistency, checkEstimatedRowCount, closeStatement, commit, createStatement, createStatement, createStatement, dropTable, dropTable, dropView, dropView, emptyStatementCache, getClientTransactionID, getConnection, getDatabaseProperty, getLastSQLException, initializeConnection, openConnection, openDefaultConnection, openDefaultConnection, openDefaultConnection, openUserConnection, prepareCall, prepareCall, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, rollback, runBare, runBareOverridable, runScript, runScript, runSQLCommands, setAutoCommit, tearDown, usingDB2Client, usingDerbyNetClient, usingEmbeddedalarm, assertDirectoryDeleted, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertExecJavaCmdAsExpected, assertLaunchedJUnitTestMethod, assertLaunchedJUnitTestMethod, assertSecurityManager, assertThrowableEquals, currentDirectory, execJavaCmd, execJavaCmd, fail, getClassVersionMajor, getEmmaJar, getFailureFolder, getFilesWith, getJavaExecutableName, getSystemProperty, getTestConfiguration, getTestResource, hasInterruptibleIO, isCVM, isIBMJVM, isJ9Platform, isJava5, isJava7, isJava8, isPhoneME, isPlatform, isSunJVM, isWindowsPlatform, openTestResource, println, printStackTrace, readProcessOutput, removeDirectory, removeDirectory, removeFiles, removeSystemProperty, runsWithEmma, runsWithJaCoCo, setSystemProperty, sleep, sleepAtLeastOneTick, traceitassertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, countTestCases, createResult, fail, fail, failNotEquals, failNotSame, failSame, format, getName, run, run, runTest, setName, setUp, toStringpublic static final java.lang.String UTF8
public static junit.framework.Test suite()
public void cs_StreamInsertCharBufferBoundary()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void cs_FailedStreamInsertCharBufferBoundaries()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertCharLong()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertCharIOException()
throws java.io.IOException,
java.sql.SQLException
IOException. Data from these streams should not be committed.java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertChar()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertCharAutoCommit()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertCharRollbackOnError()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertCharAutoCommitRollbackOnError()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertBinary()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertBinaryAutoCommit()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertBinaryRollbackOnError()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionpublic void testFailedStreamInsertBinaryAutoCommitRollbackOnError()
throws java.io.IOException,
java.sql.SQLException
java.io.IOExceptionjava.sql.SQLExceptionprivate void doInsertTest(java.lang.String[] INSERT,
java.lang.String[][] MASTER,
boolean autoCommit,
boolean rollbackOnError)
throws java.io.IOException,
java.sql.SQLException
The outcome depends on whether auto-commit is on, and whether a rollback is issued when an insert fails.
INSERT - the data to insertMASTER - the expected outcomeautoCommit - the auto-commit state to userollbackOnError - whether or not to issue a rollback if an insert
failsjava.io.IOException - if something goes wrongjava.sql.SQLException - if something goes wrongprivate void doInsertTest(int[] INSERT,
boolean autoCommit,
boolean rollbackOnError)
throws java.io.IOException,
java.sql.SQLException
The outcome depends on whether auto-commit is on, and whether a rollback is issued when an insert fails.
INSERT - the data to insertautoCommit - the auto-commit state to userollbackOnError - whether or not to issue a rollback if an insert
failsjava.io.IOException - if something goes wrongjava.sql.SQLException - if something goes wrongprivate void doInsertTest(byte[][] INSERT,
java.lang.String[][] MASTER,
boolean autoCommit,
boolean rollbackOnError)
throws java.io.IOException,
java.sql.SQLException
The outcome depends on whether auto-commit is on, and whether a rollback is issued when an insert fails.
INSERT - the data to insertMASTER - the expected outcomeautoCommit - the auto-commit state to userollbackOnError - whether or not to issue a rollback if an insert
failsjava.io.IOException - if something goes wrongjava.sql.SQLException - if something goes wrongpublic static byte[][] generateDefaultInsert()
public static java.lang.String[][] generateMaster(byte[][] insert,
int[] excludes)
The purpose of this method is to convert from byte[] to String (as
done by ResultSet.getString() when invoked on a column with
binary data).
insert - the data insertedexcludes - the rows that is expected to fail, will be ignoredApache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.