[
https://issues.apache.org/jira/browse/DERBY-4249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070495#comment-13070495
]
Dag H. Wanvik commented on DERBY-4249:
--------------------------------------
I tried to let the nested VM exit with a System.exit(1) but the top level test
still passed. I guess the top level test should discover if its child exited
with anything but clean status?
Should the nested system out from running the JUnit be visible on the top level
System.out by default? It could get confusing as we add more fixtures what
belongs to what level...
Another question, the way the nested VM's database is stopped now, we do get a
checkpoint performed, although the transaction is not rolled back (I checked
the log file with Rick's LogFileReader and saw a checkpoint operation, but no
logical undo). Is this the way it happens in the old recovery tests or do they
not lead to checkpoints?
> Create a simple store recovery test in JUnit
> --------------------------------------------
>
> Key: DERBY-4249
> URL: https://issues.apache.org/jira/browse/DERBY-4249
> Project: Derby
> Issue Type: Improvement
> Components: Test
> Affects Versions: 10.6.1.0
> Reporter: Kathey Marsden
> Assignee: Siddharth Srivastava
> Priority: Minor
> Attachments: d4249.diff, d4249_1.diff, d4249_2.diff, d4249_3.diff
>
>
> It would be good to be able to start converting the store recovery tests or
> at least be able to write new recovery tests in JUnit. We could start by
> writing a simple recovery test just to establish the framework. The test
> should.
> - Connect, create a table, commit and shutdown the database.
> - fork a jvm, add one row, commit, add another row, exit the jvm.
> - Reconnect with the first jvm and verify that the first row is there and
> the second is not.
> I guess the main thing to decide is how to spawn the second jvm and check
> results. I tend to think the second jvm should actually execute another
> JUnit test, verify the exit code (assuming a failed test has a non-zero exit
> code) and then put the output in the fail assertion if it fails so it shows
> up in the report at the end of the Suite execution. I think we could create
> a test runner that takes a class and a specific test to run instead of the
> whole suite, so we could keep our methods consolidated in a single class for
> the test, but all pure conjecture at this point. I'll have to give it a try,
> but wanted to first see if folks thought this was a reasonable approach.
>
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira