Daniel John Debrunner wrote:
V Narayanan wrote:
Hi,
I am writing tests to test the StoredProcedures used in locator
implementation of LOB related JDBC methods.
The Stored procedures are created when the database version is 10.3
(or upon hard(full) upgrade to 10.3).
Tests for the Stored Procedure exist in the form of
jdbcapi/ClobStoredProcedureTest and jdbcapi/BlobStoredProcedureTest.
I wanted to reuse this code in the upgrade tests alone the way it is
done for DatabaseMetaDataTest.
In the earlier solution I had thought of I had decided to replicate
code from jdbcapi/BlobStoredProcedureTest and
jdbcapi/ClobStoredProcedureTest into changes10_3 which upon
retrospection did not seem the right approach (because I was
replicating code).
I was able to draw a few ideas from the way DatabaseMetaDataTest is
run currently in the current tests. But the difference between the
case of the DatabaseMetaDataTest and the Stored Procedure test would
be is that the StoredProcedureTests are to be run only when the old
database version is < 10.3 and in the PH_HARD_UPGRADE and the
HARD_UPGRADE phases.
I did this by adding the following code to baseSuite of UprgadeRun
if(oldMajor == 10 && oldMinor < 3 &&
(phase == UpgradeChange.PH_HARD_UPGRADE || phase ==
UpgradeChange.PH_HARD_UPGRADE)) {
suite.addTestSuite(BlobStoredProcedureTest.class);
suite.addTestSuite(ClobStoredProcedureTest.class);
}
Can someone pls guide me on whether the method I have adopted above
is the right approach?
A cleaner approach would be to pass the phase into the
Changes10_3.suite() method and then add the additional tests as
required in that method. This would logically group the 10.3 upgrade
tests in a single location.
Dan.
I agree. This is the more cleaner solution. I will do it the way you
have said.
Thank you for the pointers,
Narayanan