[ 
https://issues.apache.org/jira/browse/OAK-3862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15093800#comment-15093800
 ] 

Chetan Mehrotra commented on OAK-3862:
--------------------------------------

Okie missed the requirement of running same test against all fixture as a means 
to test the fixture implementation also as I was thinking that they validate 
the logic in oak-core (other than NodeStore related). Moving the testcase is 
one way but that looks like quite a big change and it would also move test away 
from logic being tested. Note that when a test which makes use of fixture like 
{{TreeTest}} - The intention is to test both 

# logic related to Tree as implemented in oak-core and 
# how that logic works with various NodeStore implementation. So as to test 
NodeStore contract through various usage scenarios

So having ability to run test with at least MemoryNodeStore help in checking #1 
when they get executed within oak-core. These test then are like one we have in 
jackrabbit-core. We package those test and also run them against Oak based 
repository implementation.

Similar approach can be taken to start with - Package all test in oak-core and 
select those integration test to also run in oak-segment with just 
SegmentFixture. Later we can do same when oak-document is carved out. Would 
that work?

This would help us meet both #1 and #2 requirement



> Move integration tests in a different Maven module
> --------------------------------------------------
>
>                 Key: OAK-3862
>                 URL: https://issues.apache.org/jira/browse/OAK-3862
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>            Reporter: Francesco Mari
>            Assignee: Francesco Mari
>             Fix For: 1.4
>
>
> While moving the Segment Store and related packages into its own bundle, I 
> figured out that integration tests contained in {{oak-core}} contribute to a 
> cyclic dependency between the (new) {{oak-segment}} bundle and {{oak-core}}.
> The dependency is due to the usage of {{NodeStoreFixture}} to instantiate 
> different implementations of {{NodeStore}} in a semi-transparent way.
> Tests depending on {{NodeStoreFixture}} are most likely integration tests. A 
> clean solution to this problem would be to move those integration tests into 
> a new Maven module, referencing the API and implementation modules as needed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to