Difference between revisions of "Run Junit Tests For Non Default SQL Adapter"
Line 7: | Line 7: | ||
''For this manual, reference will be made to the PostgreSQL Adapter but it will work the same for other adapters''<br> | ''For this manual, reference will be made to the PostgreSQL Adapter but it will work the same for other adapters''<br> | ||
− | === | + | === Prerequisites === |
The following files must exist for the new SQL Adapter: | The following files must exist for the new SQL Adapter: | ||
− | <br>src | + | <br>'''src''' |
<br><code>nexj.core.persistence.sql.[DbName]SQLAdapter.java</code> extending <code>nexj.core.persistence.sql.SQLAdapter</code> | <br><code>nexj.core.persistence.sql.[DbName]SQLAdapter.java</code> extending <code>nexj.core.persistence.sql.SQLAdapter</code> | ||
<br><code>nexj.core.persistence.sql.[DbName]SQLSchemaManager.java</code> extending <code>nexj.core.persistence.sql.SQLSchemaManager</code> | <br><code>nexj.core.persistence.sql.[DbName]SQLSchemaManager.java</code> extending <code>nexj.core.persistence.sql.SQLSchemaManager</code> | ||
− | <br>test | + | <br>'''test''' |
<br><code>nexj.core.persistence.sql.[DbName]SQLAdapterTest.java</code> extending <code>nexj.core.persistence.sql.SQLAdapterTest</code> | <br><code>nexj.core.persistence.sql.[DbName]SQLAdapterTest.java</code> extending <code>nexj.core.persistence.sql.SQLAdapterTest</code> | ||
<br><code>nexj.core.persistence.sql.[DbName]SQLSchemaManagerTest.java</code> extending <code>nexj.core.persistence.sql.SQLSchemaManagerTest</code> | <br><code>nexj.core.persistence.sql.[DbName]SQLSchemaManagerTest.java</code> extending <code>nexj.core.persistence.sql.SQLSchemaManagerTest</code> | ||
Line 23: | Line 23: | ||
<br><code>nexj.core.util.JDBCInfo.java</code> | <br><code>nexj.core.util.JDBCInfo.java</code> | ||
− | ==== Environment Files ==== | + | === Configurations === |
+ | The following will configure the unit tests to run for [DbName]SQLAdapter and [DbName]SQLSchemaManager | ||
+ | ==== Environment/Connection Files ==== | ||
+ | These files are located in the ''test'' source folder in the package <code>nexj</code> | ||
+ | #Default.config | ||
+ | #*In the <code>DataSourceConnections</code> elemement | ||
+ | #*Change all occurrences of <code>adapter="MySQL"</code> to <code>adapter="DbName"</code> | ||
+ | #*Edit all occurrences of <code>port="3306"</code> to the port on which the new DbName is configured to accept connections | ||
+ | <br>For the PostgreSQL Adapter, the following configuration is used | ||
+ | <source lang="xml"> | ||
+ | <DataSourceConnections> | ||
+ | <RelationalDatabaseConnection adapter="PostgreSQL" dataSource="DefaultRelationalDatabase" database="test" | ||
+ | host="localhost" password="test" port="5432" unicode="true" user="test"/> | ||
+ | <RelationalDatabaseConnection adapter="PostgreSQL" dataSource="ExternalRelationalDatabase" database="test" | ||
+ | host="localhost" password="test" port="5432" unicode="true" user="test"/> | ||
+ | ... | ||
+ | </DataSourceConnections> | ||
+ | </source> | ||
+ | ==== SQL Scripts ==== | ||
+ | ==== Unit Test Files ==== |
Revision as of 12:06, 26 February 2011
Contents
Debugging a Non-Default SQL Adapter
Summary
By default, NexJ Express Unit tests are configured to test the MySQL Adapter.
The instructions that follow outline instructions for configuring Unit tests to be run for other SQL Adapters.
For this manual, reference will be made to the PostgreSQL Adapter but it will work the same for other adapters
Prerequisites
The following files must exist for the new SQL Adapter:
src
nexj.core.persistence.sql.[DbName]SQLAdapter.java
extending nexj.core.persistence.sql.SQLAdapter
nexj.core.persistence.sql.[DbName]SQLSchemaManager.java
extending nexj.core.persistence.sql.SQLSchemaManager
test
nexj.core.persistence.sql.[DbName]SQLAdapterTest.java
extending nexj.core.persistence.sql.SQLAdapterTest
nexj.core.persistence.sql.[DbName]SQLSchemaManagerTest.java
extending nexj.core.persistence.sql.SQLSchemaManagerTest
The following files should be edited and entries for the new SQL Adapter added:
nexj.core.meta.persistence.sql.RelationalDatabase.java
nexj.core.meta.peristence.sql.RelationalDatabaseFragment.java
nexj.core.meta.sys.system.dstypes
nexj.core.persistence.sql.SQLSchemaManagerFactory.java
nexj.core.util.JDBCInfo.java
Configurations
The following will configure the unit tests to run for [DbName]SQLAdapter and [DbName]SQLSchemaManager
Environment/Connection Files
These files are located in the test source folder in the package nexj
- Default.config
- In the
DataSourceConnections
elemement - Change all occurrences of
adapter="MySQL"
toadapter="DbName"
- Edit all occurrences of
port="3306"
to the port on which the new DbName is configured to accept connections
- In the
For the PostgreSQL Adapter, the following configuration is used
<DataSourceConnections>
<RelationalDatabaseConnection adapter="PostgreSQL" dataSource="DefaultRelationalDatabase" database="test"
host="localhost" password="test" port="5432" unicode="true" user="test"/>
<RelationalDatabaseConnection adapter="PostgreSQL" dataSource="ExternalRelationalDatabase" database="test"
host="localhost" password="test" port="5432" unicode="true" user="test"/>
...
</DataSourceConnections>