org.apache.derbyTesting.functionTests.tests.jdbcapi
Class AuthenticationTest

java.lang.Object
  extended by junit.framework.Assert
      extended by junit.framework.TestCase
          extended by org.apache.derbyTesting.junit.BaseTestCase
              extended by org.apache.derbyTesting.junit.BaseJDBCTestCase
                  extended by org.apache.derbyTesting.functionTests.tests.jdbcapi.AuthenticationTest
All Implemented Interfaces:
junit.framework.Test
Direct Known Subclasses:
DriverMgrAuthenticationTest, PoolDSAuthenticationTest, XADSAuthenticationTest

public class AuthenticationTest
extends BaseJDBCTestCase

Tests authentication and connection level authorization.


Field Summary
private static java.lang.String apollo
           
private static java.lang.String PASSWORD_SUFFIX
           
private static java.lang.String[] USERS
           
private static java.lang.String zeus
           
 
Fields inherited from class org.apache.derbyTesting.junit.BaseTestCase
DEFAULT_DB_DIR, DERBY_LOG, ERRORSTACKTRACEFILE
 
Constructor Summary
AuthenticationTest(java.lang.String name)
          Creates a new instance of the Test
 
Method Summary
 void assertConnectionFail(java.lang.String dbName)
           
protected  void assertConnectionFail(java.lang.String expectedSqlState, java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertConnectionOK(java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertConnectionWOUPFail(java.lang.String expectedError, java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertConnectionWOUPOK(java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertFailSetDatabaseProperty(java.lang.String propertyName, java.lang.String value, java.sql.Connection conn)
           
private  void assertNormalUserName(java.lang.String normalUserName, java.sql.Connection connUser)
          Assert that the user name returned by various mechanisms matches the normal user name.
protected  void assertShutdownFail(java.lang.String expectedSqlState, java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertShutdownOK(java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertShutdownUsingConnAttrsOK(java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertShutdownUsingSetShutdownOK(java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertShutdownWOUPFail(java.lang.String expectedSqlState, java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertShutdownWOUPOK(java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertSystemShutdownFail(java.lang.String expectedError, java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertSystemShutdownOK(java.lang.String dbName, java.lang.String user, java.lang.String password)
           
protected  void assertUserValue(java.lang.String[] expected, java.lang.String user, java.lang.String sql)
           
protected  void assertUserValue(java.lang.String[] expected, java.lang.String user, java.lang.String password, java.lang.String sql)
           
static junit.framework.Test baseSuite(java.lang.String name)
           
protected  void initializeConnection(java.sql.Connection conn)
          Ensure all connections are not in auto commit mode.
protected static void setBaseProps(junit.framework.TestSuite suite, junit.framework.Test test)
           
protected  void setDatabaseProperty(java.lang.String propertyName, java.lang.String value, java.sql.Connection conn)
           
protected  void setUp()
           
static junit.framework.Test suite()
           
protected  void tearDown()
          Tear down this fixture, sub-classes should call super.tearDown().
 void testChangePasswordAndDatabasePropertiesOnly()
           
 void testConnectShutdownAuthentication()
           
 void testGreekCharacters()
           
 void testNotFullAccessUsers()
           
 void testSystemShutdown()
           
 void testUserAccessRoutines()
          Test the procedure and function that provide short-cuts to setting and getting connection level access.
 void testUserCasing()
          Test how user names behave with casing.
 void testUserFunctions()
           
private  void userCasingTest(java.lang.String jdbcUserName, java.lang.String normalUserName, java.sql.Connection connUser)
           
private  void userCasingTest(java.lang.String jdbcUserName, java.lang.String normalUserName, java.lang.String password)
          Test the user casing obtaining connections a variety of ways.
protected  void useUserValue(int expectedUpdateCount, java.lang.String user, java.lang.String sql)
           
 
Methods inherited from class org.apache.derbyTesting.junit.BaseJDBCTestCase
assertCallError, assertCheckTable, assertCompileError, assertEquals, assertEquals, assertEquals, assertEquivalentDataType, assertGetIntError, assertNextError, assertPreparedStatementError, assertSQLExceptionEquals, assertSQLState, assertSQLState, assertStatementError, assertStatementError, assertStatementError, assertStatementError, assertTableRowCount, assertUpdateCount, assertUpdateCount, checkAllConsistency, checkEstimatedRowCount, commit, createStatement, createStatement, createStatement, dropTable, dropTable, getConnection, getDatabaseProperty, getLastSQLException, openConnection, openDefaultConnection, openDefaultConnection, openUserConnection, prepareCall, prepareCall, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, rollback, runScript, runScript, runSQLCommands, setAutoCommit, usingDB2Client, usingDerbyNetClient, usingEmbedded
 
Methods inherited from class org.apache.derbyTesting.junit.BaseTestCase
alarm, assertEquals, assertEquals, assertEquals, assertExecJavaCmdAsExpected, assertSecurityManager, assertThrowableEquals, execJavaCmd, fail, getFailureFolder, getJavaExecutableName, getSystemProperty, getTestConfiguration, getTestResource, openTestResource, println, printStackTrace, readProcessOutput, removeDirectory, removeDirectory, removeSystemProperty, runBare, setSystemProperty, traceit
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, run, runTest, setName, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, 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, fail, fail
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

PASSWORD_SUFFIX

private static final java.lang.String PASSWORD_SUFFIX
See Also:
Constant Field Values

USERS

private static final java.lang.String[] USERS

zeus

private static final java.lang.String zeus
See Also:
Constant Field Values

apollo

private static final java.lang.String apollo
See Also:
Constant Field Values
Constructor Detail

AuthenticationTest

public AuthenticationTest(java.lang.String name)
Creates a new instance of the Test

Method Detail

initializeConnection

protected void initializeConnection(java.sql.Connection conn)
                             throws java.sql.SQLException
Ensure all connections are not in auto commit mode.

Overrides:
initializeConnection in class BaseJDBCTestCase
Parameters:
conn - Connection to be intialized
Throws:
java.sql.SQLException - Error setting the initial state.

suite

public static junit.framework.Test suite()

baseSuite

public static junit.framework.Test baseSuite(java.lang.String name)

setBaseProps

protected static void setBaseProps(junit.framework.TestSuite suite,
                                   junit.framework.Test test)

setUp

protected void setUp()
              throws java.lang.Exception
Overrides:
setUp in class junit.framework.TestCase
Throws:
java.lang.Exception

tearDown

protected void tearDown()
                 throws java.lang.Exception
Description copied from class: BaseJDBCTestCase
Tear down this fixture, sub-classes should call super.tearDown(). This cleanups & closes the connection if it is open and any statement objects returned through the utility methods.

Overrides:
tearDown in class BaseJDBCTestCase
Throws:
java.lang.Exception

testUserCasing

public void testUserCasing()
                    throws java.sql.SQLException
Test how user names behave with casing.

Throws:
java.sql.SQLException

userCasingTest

private void userCasingTest(java.lang.String jdbcUserName,
                            java.lang.String normalUserName,
                            java.lang.String password)
                     throws java.sql.SQLException
Test the user casing obtaining connections a variety of ways.

Parameters:
jdbcUserName - User name to be used to obtain the connection via JDBC
normalUserName - Normalized form of the user connection.
password - Password for the user.
Throws:
java.sql.SQLException

userCasingTest

private void userCasingTest(java.lang.String jdbcUserName,
                            java.lang.String normalUserName,
                            java.sql.Connection connUser)
                     throws java.sql.SQLException
Parameters:
jdbcUserName - User name as passed into the JDBC connection request.
normalUserName - Normalized user name.
connUser - Connection for the user, closed by this method.
Throws:
java.sql.SQLException

assertNormalUserName

private void assertNormalUserName(java.lang.String normalUserName,
                                  java.sql.Connection connUser)
                           throws java.sql.SQLException
Assert that the user name returned by various mechanisms matches the normal user name.

Parameters:
normalUserName -
connUser -
Throws:
java.sql.SQLException

testConnectShutdownAuthentication

public void testConnectShutdownAuthentication()
                                       throws java.sql.SQLException
Throws:
java.sql.SQLException

testUserFunctions

public void testUserFunctions()
                       throws java.sql.SQLException
Throws:
java.sql.SQLException

testChangePasswordAndDatabasePropertiesOnly

public void testChangePasswordAndDatabasePropertiesOnly()
                                                 throws java.sql.SQLException
Throws:
java.sql.SQLException

testNotFullAccessUsers

public void testNotFullAccessUsers()
                            throws java.sql.SQLException
Throws:
java.sql.SQLException

testUserAccessRoutines

public void testUserAccessRoutines()
                            throws java.sql.SQLException
Test the procedure and function that provide short-cuts to setting and getting connection level access.

Throws:
java.sql.SQLException

testGreekCharacters

public void testGreekCharacters()
                         throws java.sql.SQLException
Throws:
java.sql.SQLException

testSystemShutdown

public void testSystemShutdown()
                        throws java.sql.SQLException
Throws:
java.sql.SQLException

assertFailSetDatabaseProperty

protected void assertFailSetDatabaseProperty(java.lang.String propertyName,
                                             java.lang.String value,
                                             java.sql.Connection conn)
                                      throws java.sql.SQLException
Throws:
java.sql.SQLException

setDatabaseProperty

protected void setDatabaseProperty(java.lang.String propertyName,
                                   java.lang.String value,
                                   java.sql.Connection conn)
                            throws java.sql.SQLException
Throws:
java.sql.SQLException

useUserValue

protected void useUserValue(int expectedUpdateCount,
                            java.lang.String user,
                            java.lang.String sql)
                     throws java.sql.SQLException
Throws:
java.sql.SQLException

assertUserValue

protected void assertUserValue(java.lang.String[] expected,
                               java.lang.String user,
                               java.lang.String password,
                               java.lang.String sql)
                        throws java.sql.SQLException
Throws:
java.sql.SQLException

assertUserValue

protected void assertUserValue(java.lang.String[] expected,
                               java.lang.String user,
                               java.lang.String sql)
                        throws java.sql.SQLException
Throws:
java.sql.SQLException

assertConnectionOK

protected void assertConnectionOK(java.lang.String dbName,
                                  java.lang.String user,
                                  java.lang.String password)
                           throws java.sql.SQLException
Throws:
java.sql.SQLException

assertConnectionWOUPOK

protected void assertConnectionWOUPOK(java.lang.String dbName,
                                      java.lang.String user,
                                      java.lang.String password)
                               throws java.sql.SQLException
Throws:
java.sql.SQLException

assertConnectionFail

protected void assertConnectionFail(java.lang.String expectedSqlState,
                                    java.lang.String dbName,
                                    java.lang.String user,
                                    java.lang.String password)
                             throws java.sql.SQLException
Throws:
java.sql.SQLException

assertConnectionWOUPFail

protected void assertConnectionWOUPFail(java.lang.String expectedError,
                                        java.lang.String dbName,
                                        java.lang.String user,
                                        java.lang.String password)
                                 throws java.sql.SQLException
Throws:
java.sql.SQLException

assertShutdownUsingSetShutdownOK

protected void assertShutdownUsingSetShutdownOK(java.lang.String dbName,
                                                java.lang.String user,
                                                java.lang.String password)
                                         throws java.sql.SQLException
Throws:
java.sql.SQLException

assertShutdownUsingConnAttrsOK

protected void assertShutdownUsingConnAttrsOK(java.lang.String dbName,
                                              java.lang.String user,
                                              java.lang.String password)
                                       throws java.sql.SQLException
Throws:
java.sql.SQLException

assertShutdownWOUPOK

protected void assertShutdownWOUPOK(java.lang.String dbName,
                                    java.lang.String user,
                                    java.lang.String password)
                             throws java.sql.SQLException
Throws:
java.sql.SQLException

assertShutdownFail

protected void assertShutdownFail(java.lang.String expectedSqlState,
                                  java.lang.String dbName,
                                  java.lang.String user,
                                  java.lang.String password)
                           throws java.sql.SQLException
Throws:
java.sql.SQLException

assertShutdownOK

protected void assertShutdownOK(java.lang.String dbName,
                                java.lang.String user,
                                java.lang.String password)
                         throws java.sql.SQLException
Throws:
java.sql.SQLException

assertShutdownWOUPFail

protected void assertShutdownWOUPFail(java.lang.String expectedSqlState,
                                      java.lang.String dbName,
                                      java.lang.String user,
                                      java.lang.String password)
                               throws java.sql.SQLException
Throws:
java.sql.SQLException

assertSystemShutdownOK

protected void assertSystemShutdownOK(java.lang.String dbName,
                                      java.lang.String user,
                                      java.lang.String password)
                               throws java.sql.SQLException
Throws:
java.sql.SQLException

assertSystemShutdownFail

protected void assertSystemShutdownFail(java.lang.String expectedError,
                                        java.lang.String dbName,
                                        java.lang.String user,
                                        java.lang.String password)
                                 throws java.sql.SQLException
Throws:
java.sql.SQLException

assertConnectionFail

public void assertConnectionFail(java.lang.String dbName)
                          throws java.sql.SQLException
Throws:
java.sql.SQLException

Built on Wed 2009-11-25 18:43:31-0800, from revision 884373

Apache Derby V10.6 Internals - Copyright © 2004,2008 The Apache Software Foundation. All Rights Reserved.