[ 
https://issues.apache.org/jira/browse/DERBY-3088?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12565517#action_12565517
 ] 

Myrna van Lunteren commented on DERBY-3088:
-------------------------------------------

I've been looking at the last remaining test master/canon - testclientij.out - 
that shows the version number.
It looks like this test was explicitly intended as a .sql test to test 
DerbyNetClient connection strings, so converting to a .java junit test does not 
seem appropriate.

The difference between other tests executing .sql files (e.g. NistScripts, 
LangScripts, ToolScripts) is that this one emulates the old harness' RunTest 
mechanism of using ij.main("-fr", "filename") (by extending util.IjTestCase), 
whereas the other tests use ij.runScript(..).

-fr is possibly intended to be a undocumented feature, at least, I could find 
no documentation, even the ij javadoc is very quiet about it, and if you use it 
incorrectly, (e.g. : java org.apache.derby.tools.ij testclientij.sql) you get 
an NPE rather than an appropriate message.
I gather it's supposed to list the file in it's full resource path - e.g.: java 
org.apache.derby.tools.ij /testclientij.sql (if . is in your classpath and the 
file sits in the current dir).

Apparently, and per the code, running main vs runScript results in some slight 
differences:
- no version number printed
- first connection is already started
- no messages indicating number of rows selected
These differences do not seem relevant to this particular test.

I think the util.IjTestCase mechanism may possibly be of use in testing ij in 
the future, but at present, in the NetIjTest, it appears to be just another way 
of doing the same thing as e.g. NistScripts, a way that has the unfortunate 
effect of printing the version number.

We could consider adding the script to the tools directory/_Suite...But I think 
it is more appropriate in it's current spot. Thus, I intend to rewrite 
NetIjTest to use the same mechanism as NistScripts. When this is done, I intend 
to get rid of the master-editing target in tools/release/build.xml.
I'll leave IjTestCase in place for future use. If used, I would need a 
different compareCanon method in CanonTestCase, one that ignores lines with 
specified strings (or maybe specifically checks on the version number without 
it being in the canon).


> convert to junit, or otherwise eliminate version in tests which require an 
> update of the master in the release management process
> ---------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-3088
>                 URL: https://issues.apache.org/jira/browse/DERBY-3088
>             Project: Derby
>          Issue Type: Improvement
>          Components: Build tools, Test
>            Reporter: Myrna van Lunteren
>            Assignee: Myrna van Lunteren
>         Attachments: DERBY-3088_ServerPropertiesTest.diff, 
> DERBY-3088_ServerPropertiesTest2.diff, 
> DERBY-3088_ServerPropertiesTest_3.diff, DERBY-3088_ServerPropertiesTest_3.stat
>
>
> There are a number of tests that require a master update every time the 
> version number is bumped.
> This is a tedious and error prone detail in the release management process.
> Currently affected masters are listed in tools/release/build.xml:
> java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out
> java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out
> java/testing/org/apache/derbyTesting/functionTests/master/metadata.out
> java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out
> java/testing/org/apache/derbyTesting/functionTests/master/NSinSameJVM.out
> java/testing/org/apache/derbyTesting/functionTests/master/checkToursDB.out
> java/testing/org/apache/derbyTesting/functionTests/master/testclientij.out
> java/testing/org/apache/derbyTesting/functionTests/master/testProperties.out
> It would streamline the release process if these tests in particular were 
> either converted to junit, or if the version numbers would be eliminated.
> Note: there already is a bug for metadata.java conversion: DERBY-2242

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to