[ 
https://issues.apache.org/jira/browse/DERBY-1458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Myrna van Lunteren updated DERBY-1458:
--------------------------------------

    Attachment: DERBY-1458.diff

Attaching a patch that adds a target, runmessagechecktest, to the top level 
build.xml. The 'all' target depends on it, and it runs MessageBundleTest 
through target junit-single.

When there are no missing/orphaned messages, this adds the following output to 
any 'all' build (after the pptesting-build/junit-init and before the final 
closing 'all:'
-------------------
runmessagechecktest:

junit-init:

junit-single:
    [junit] Running 
org.apache.derbyTesting.functionTests.tests.i18n.MessageBundleTest
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.188 sec
-------------------

When you remove an SQLState without clobbering (clobber & rebuild would show 
more compilation errors)  it'll do something like this (but still give BUILD 
SUCCESSFUL)

-------------------
runmessagechecktest:

junit-init:

junit-single:
    [junit] Running 
org.apache.derbyTesting.functionTests.tests.i18n.MessageBundleTest
    [junit] WARNING: Message id XCL30.S in messages_en.properties is not 
referenced in either SQLState.java or MessageId.java
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.172 sec
-------------------

If you remove a message from messages.xml you'll get this:

-------------------
runmessagechecktest:

junit-init:

junit-single:
    [junit] Running 
org.apache.derbyTesting.functionTests.tests.i18n.MessageBundleTest
    [junit] ERROR: Message id XCL30.S in SQLState.java was not found in 
messages_en.properties
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.219 sec
-------------------

I think this good enough.
I intend to commit this.

> Add MessageBundleTest to build script to verify that there are no orphaned 
> message ids
> --------------------------------------------------------------------------------------
>
>                 Key: DERBY-1458
>                 URL: https://issues.apache.org/jira/browse/DERBY-1458
>             Project: Derby
>          Issue Type: Test
>          Components: Build tools
>    Affects Versions: 10.2.1.6
>            Reporter: David Van Couvering
>         Attachments: DERBY-1458.diff
>
>
> MessageBundleTest can't be run with the regular tests because it relies on 
> SQLState.java and MessageId.java, which are not in the jar files.  But it 
> actually makes more sense to run it as part of the build, as we are verifying 
> the consistency of code references.  

-- 
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