[
https://issues.apache.org/jira/browse/DERBY-4249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Siddharth Srivastava updated DERBY-4249:
----------------------------------------
Attachment: d4249_1.diff
I trying to fork the JVM and insert rows into the database. But the test fails:
There was 1 failure:
------------------------------------------------------------------------------------
1) testBasicRecovery(org.apache.derbyTesting.functionTests.tests.store.RecoveryT
est)junit.framework.AssertionFailedError: Unexpected row count: expected:<1> but
was:<0>
at org.apache.derbyTesting.junit.JDBC.assertFullResultSetMinion(JDBC.jav
a:1020)
at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:935)
at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:892)
at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:850)
at org.apache.derbyTesting.functionTests.tests.store.RecoveryTest.assert
Database(RecoveryTest.java:78)
at org.apache.derbyTesting.functionTests.tests.store.RecoveryTest.testBa
sicRecovery(RecoveryTest.java:58)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:
113)
at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
at junit.extensions.TestSetup.run(TestSetup.java:25)
FAILURES!!!
Tests run: 1, Failures: 1, Errors: 0
-------------------------------------------------------------------------------------
It seems that launchRecoveryInsert() isn't executed at all.
Also if I check exitValue(), the assertLaunchedJUnitFixture generates a
IllegalThreadStateException.
What am I doing wrong ?
Note: Please ignore some commented out and ugly looking code(and functions) in
the diff
> 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
>
>
> 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