You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by Joerg von Frantzius <jo...@artnology.com> on 2009/04/03 18:31:47 UTC

Re: Bidirectional relationship tests in the TCK

Hi Michelle,

it took a while, but now I'm back on this subject :-)

Now I'd like to know whether the tests also cover the two different
kinds of mappings one can have for One-Many relationships? I think we
are seeing a bug in datanucleus which happens only when a One-Many
relationship is mapped to its own join table. If only one relationship
mapping is used for the RelationShip1ToMany* tests, then I'd very much
like to know which one that is.

Maybe testing bidirectional relationship management with different
mappings would be too much for the TCK, then we'd just turn this into
tests of datanucleus itself.

Regards,
Jörg

Michelle Caisse wrote:
> Hi Jörg,
>
> There are tests from both sides:
>
> 10:50:09
> /cygdrive/c/jdo/trunk/tck2/src/java/org/apache/jdo/tck/mapping>grep
> MappedSide *.java | grep public
> Relationship1To1AllRelationships.java:    public void
> testSetToExistingFromMappedSide() {
> Relationship1To1AllRelationships.java:    public void
> testSetToNullFromMappedSide() {
> Relationship1To1AllRelationships.java:    public void
> testSetToNewFromMappedSide() {
> Relationship1To1AllRelationships.java:    public void
> testDeleteFromMappedSide() {
> Relationship1To1NoRelationships.java:    public void
> testSetToExistingFromMappedSide() {
> Relationship1To1NoRelationships.java:    public void
> testSetToNewFromMappedSide() {
> Relationship1ToManyAllRelationships.java:    public void
> testSetToExistingFromMappedSide() {
> Relationship1ToManyAllRelationships.java:    public void
> testSetToNullFromMappedSide() {
> Relationship1ToManyAllRelationships.java:    public void
> testSetToNewFromMappedSide() {
> Relationship1ToManyAllRelationships.java:    public void
> testDeleteFromMappedSide() {
> Relationship1ToManyNoRelationships.java:    public void
> testSetToExistingFromMappedSide() {
> Relationship1ToManyNoRelationships.java:    public void
> testSetToNewFromMappedSide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testSetToNullFromMappedSide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testReplaceFromMappedSide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testAddNewFromMappedSide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testAddExistingFromMappedSide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testRemoveFromMappedSide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testDeleteFromMappedSide() {
> RelationshipManyToManyNoRelationships.java:    public void
> testAddFromMappedSide() {
> RelationshipManyToManyNoRelationships.java:    public void
> testReplaceFromMappedSide() {
>
> 10:47:42
> /cygdrive/c/jdo/trunk/tck2/src/java/org/apache/jdo/tck/mapping>grep
> Mapped[bB]y *.java | grep public
> Relationship1To1AllRelationships.java:    public void
> testSetToExistingFromMappedBySide() {
> Relationship1To1AllRelationships.java:    public void
> testSetToNullFromMappedBySide() {
> Relationship1To1AllRelationships.java:    public void
> testSetToNewFromMappedBySide() {
> Relationship1To1AllRelationships.java:    public void
> testDeleteFromMappedBySide() {
> Relationship1To1NoRelationships.java:    public void
> testSetToExistingFromMappedBySide() {
> Relationship1To1NoRelationships.java:    public void
> testSetToNewFromMappedBySide() {
> Relationship1ToManyAllRelationships.java:    public void
> testAddExistingFromMappedbySide() {
> Relationship1ToManyAllRelationships.java:    public void
> testReplaceFromMappedbySide() {
> Relationship1ToManyAllRelationships.java:    public void
> testAddNewFromMappedbySide() {
> Relationship1ToManyAllRelationships.java:    public void
> testSetToNullFromMappedbySide() {
> Relationship1ToManyAllRelationships.java:    public void
> testRemoveFromMappedbySide() {
> Relationship1ToManyAllRelationships.java:    public void
> testDeleteFromMappedbySide() {
> Relationship1ToManyNoRelationships.java:    public void
> testAddExistingFromMappedbySide() {
> Relationship1ToManyNoRelationships.java:    public void
> testSetToNewFromMappedbySide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testSetToNullFromMappedbySide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testReplaceFromMappedbySide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testAddNewFromMappedbySide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testAddExistingFromMappedbySide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testRemoveFromMappedbySide() {
> RelationshipManyToManyAllRelationships.java:    public void
> testDeleteFromMappedbySide() {
> RelationshipManyToManyNoRelationships.java:    public void
> testAddFromMappedbySide() {
> RelationshipManyToManyNoRelationships.java:    public void
> testReplaceFromMappedbySide() {
> RelationshipNegative1To1Test.java:    public void
> testA2BbutNotB2AMappedBy() {
> RelationshipNegative1To1Test.java:    public void
> testSetOtherSideToNullMappedBy() {
>
> Please let us know if an important test case is missing.
>
> -- Michelle
>
> Joerg von Frantzius wrote:
>
>> Hi,
>>
>> when looking at the relationship tests in org.apache.jdo.tck.mapping,
>> it seems that the tests for bidirectional integrity only test
>> changing relationships from the "mapped-by" side of the relationship?
>> That's my impression at least from looking at the method names e.g.
>> in Relationship1ToManyAllRelationships.java.
>>
>> I'm asking this because I believe to see inconsistencies with
>> bidirectional relationships in the RI.
>>
>> Regards,
>> Jörg
>>
>


-- 
____________________________________________________________________
artnology GmbH - Milastraße 4 - 10437 Berlin - Germany
Geschäftsführer: Ekkehard Blome (CEO), Felix Kuschnick (CCO)
Registergericht: Amtsgericht Berlin Charlottenburg HRB 76376 
UST-Id. DE 217652550