Package org.apache.cayenne.testdo.testmap

Examples of org.apache.cayenne.testdo.testmap.ArtGroup


        context.commitChanges();
    }

    public void testReflexiveRelationshipInsertOrder2() {

        ArtGroup childGroup1 = context.newObject(ArtGroup.class);
        childGroup1.setName("child1");

        ArtGroup parentGroup = context.newObject(ArtGroup.class);
        parentGroup.setName("parent");

        childGroup1.setToParentGroup(parentGroup);

        context.commitChanges();
    }
View Full Code Here


    }

    public void testReflexiveRelationshipInsertOrder3() {
        // multiple children, one created before parent, one after

        ArtGroup childGroup1 = context.newObject(ArtGroup.class);
        childGroup1.setName("child1");

        ArtGroup parentGroup = context.newObject(ArtGroup.class);
        parentGroup.setName("parent");

        childGroup1.setToParentGroup(parentGroup);

        ArtGroup childGroup2 = context.newObject(ArtGroup.class);
        childGroup2.setName("child2");
        childGroup2.setToParentGroup(parentGroup);

        context.commitChanges();
    }
View Full Code Here

    }

    public void testReflexiveRelationshipInsertOrder4() {
        // multiple children, one created before parent, one after

        ArtGroup childGroup1 = context.newObject(ArtGroup.class);
        childGroup1.setName("child1");

        ArtGroup parentGroup = context.newObject(ArtGroup.class);
        parentGroup.setName("parent");

        childGroup1.setToParentGroup(parentGroup);

        ArtGroup childGroup2 = context.newObject(ArtGroup.class);
        childGroup2.setName("subchild");
        childGroup2.setToParentGroup(childGroup1);

        context.commitChanges();
    }
View Full Code Here

        List<Painting> results = context.performQuery(q);
        assertEquals(1, results.size());
    }

    public void testPrefetch_ReflexiveRelationship() throws Exception {
        ArtGroup parent = (ArtGroup) context.newObject("ArtGroup");
        parent.setName("parent");
        ArtGroup child = (ArtGroup) context.newObject("ArtGroup");
        child.setName("child");
        child.setToParentGroup(parent);
        context.commitChanges();

        SelectQuery q = new SelectQuery("ArtGroup");
        q.setQualifier(ExpressionFactory.matchExp("name", "child"));
        q.addPrefetch("toParentGroup");

        final List<ArtGroup> results = context.performQuery(q);

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                assertEquals(1, results.size());

                ArtGroup fetchedChild = results.get(0);
                // The parent must be fully fetched, not just HOLLOW (a fault)
                assertEquals(PersistenceState.COMMITTED, fetchedChild.getToParentGroup().getPersistenceState());
            }
        });
    }
View Full Code Here

        final ObjectContext childContext = runtime.newContext(context);

        final Artist childO1 = childContext.newObject(Artist.class);
        childO1.setArtistName("Master");

        final ArtGroup childO2 = childContext.newObject(ArtGroup.class);
        childO2.setName("Detail1");
        childO2.addToArtistArray(childO1);

        ObjEntity ent = childContext.getEntityResolver().getObjEntity("ArtGroup");
        Collection<ObjRelationship> rels = ent.getDeclaredRelationships();
        for (ObjRelationship rel : rels) {
            System.out.println(rel.getName());
        }

        assertEquals(1, childO1.getGroupArray().size());
        assertEquals(1, childO2.getArtistArray().size());

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                childContext.commitChangesToParent();

                assertEquals(PersistenceState.COMMITTED, childO1.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO2.getPersistenceState());

                Artist parentO1 = (Artist) context.getGraphManager().getNode(
                        childO1.getObjectId());

                assertNotNull(parentO1);
                assertEquals(PersistenceState.NEW, parentO1.getPersistenceState());

                ArtGroup parentO2 = (ArtGroup) context.getGraphManager().getNode(
                        childO2.getObjectId());

                assertNotNull(parentO2);
                assertEquals(PersistenceState.NEW, parentO2.getPersistenceState());

                assertEquals(1, parentO1.getGroupArray().size());
                assertEquals(1, parentO2.getArtistArray().size());
                assertTrue(parentO2.getArtistArray().contains(parentO1));
                assertTrue(parentO1.getGroupArray().contains(parentO2));
            }
        });
    }
View Full Code Here

        final ObjectContext childContext = runtime.newContext(context);

        final Artist childO1 = childContext.newObject(Artist.class);
        childO1.setArtistName("o1");

        final ArtGroup childO2 = childContext.newObject(ArtGroup.class);
        childO2.setName("o2");
        childO2.addToArtistArray(childO1);

        childContext.commitChangesToParent();

        final ArtGroup childO3 = childContext.newObject(ArtGroup.class);
        childO3.setName("o3");
        childO1.addToGroupArray(childO3);

        assertEquals(2, childO1.getGroupArray().size());
        assertEquals(1, childO2.getArtistArray().size());
        assertEquals(1, childO3.getArtistArray().size());

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                childContext.commitChangesToParent();

                assertEquals(PersistenceState.COMMITTED, childO1.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO2.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO3.getPersistenceState());

                Artist parentO1 = (Artist) context.getGraphManager().getNode(
                        childO1.getObjectId());

                assertNotNull(parentO1);
                assertEquals(PersistenceState.NEW, parentO1.getPersistenceState());

                ArtGroup parentO2 = (ArtGroup) context.getGraphManager().getNode(
                        childO2.getObjectId());

                assertNotNull(parentO2);
                assertEquals(PersistenceState.NEW, parentO2.getPersistenceState());

                ArtGroup parentO3 = (ArtGroup) context.getGraphManager().getNode(
                        childO3.getObjectId());

                assertNotNull(parentO3);
                assertEquals(PersistenceState.NEW, parentO3.getPersistenceState());

                assertEquals(2, parentO1.getGroupArray().size());
                assertEquals(1, parentO2.getArtistArray().size());
                assertEquals(1, parentO3.getArtistArray().size());
                assertTrue(parentO2.getArtistArray().contains(parentO1));
                assertTrue(parentO3.getArtistArray().contains(parentO1));
                assertTrue(parentO1.getGroupArray().contains(parentO2));
                assertTrue(parentO1.getGroupArray().contains(parentO3));
            }
        });

        childO1.removeFromGroupArray(childO2);

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                childContext.commitChangesToParent();

                assertEquals(PersistenceState.COMMITTED, childO1.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO2.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO3.getPersistenceState());

                Artist parentO1 = (Artist) context.getGraphManager().getNode(
                        childO1.getObjectId());

                assertNotNull(parentO1);
                assertEquals(PersistenceState.NEW, parentO1.getPersistenceState());

                ArtGroup parentO2 = (ArtGroup) context.getGraphManager().getNode(
                        childO2.getObjectId());

                assertNotNull(parentO2);
                assertEquals(PersistenceState.NEW, parentO2.getPersistenceState());

                ArtGroup parentO3 = (ArtGroup) context.getGraphManager().getNode(
                        childO3.getObjectId());

                assertNotNull(parentO3);
                assertEquals(PersistenceState.NEW, parentO3.getPersistenceState());

                assertEquals(1, parentO1.getGroupArray().size());
                assertEquals(0, parentO2.getArtistArray().size());
                assertEquals(1, parentO3.getArtistArray().size());

                assertTrue(parentO3.getArtistArray().contains(parentO1));
                assertTrue(parentO1.getGroupArray().contains(parentO3));
            }
        });
    }
View Full Code Here

        List<Painting> results = context.performQuery(q);
        assertEquals(1, results.size());
    }

    public void testPrefetch_ReflexiveRelationship() throws Exception {
        ArtGroup parent = (ArtGroup) context.newObject("ArtGroup");
        parent.setName("parent");
        ArtGroup child = (ArtGroup) context.newObject("ArtGroup");
        child.setName("child");
        child.setToParentGroup(parent);
        context.commitChanges();

        SelectQuery q = new SelectQuery("ArtGroup");
        q.setQualifier(ExpressionFactory.matchExp("name", "child"));
        q.addPrefetch("toParentGroup");

        final List<ArtGroup> results = context.performQuery(q);

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                assertEquals(1, results.size());

                ArtGroup fetchedChild = results.get(0);
                // The parent must be fully fetched, not just HOLLOW (a fault)
                assertEquals(PersistenceState.COMMITTED, fetchedChild
                        .getToParentGroup()
                        .getPersistenceState());
            }
        });
    }
View Full Code Here

        final ObjectContext childContext = context.createChildContext();

        final Artist childO1 = childContext.newObject(Artist.class);
        childO1.setArtistName("Master");

        final ArtGroup childO2 = childContext.newObject(ArtGroup.class);
        childO2.setName("Detail1");
        childO2.addToArtistArray(childO1);

        ObjEntity ent = childContext.getEntityResolver().getObjEntity("ArtGroup");
        Collection<ObjRelationship> rels = ent.getDeclaredRelationships();
        for (ObjRelationship rel : rels) {
            System.out.println(rel.getName());
        }

        assertEquals(1, childO1.getGroupArray().size());
        assertEquals(1, childO2.getArtistArray().size());

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                childContext.commitChangesToParent();

                assertEquals(PersistenceState.COMMITTED, childO1.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO2.getPersistenceState());

                Artist parentO1 = (Artist) context.getGraphManager().getNode(
                        childO1.getObjectId());

                assertNotNull(parentO1);
                assertEquals(PersistenceState.NEW, parentO1.getPersistenceState());

                ArtGroup parentO2 = (ArtGroup) context.getGraphManager().getNode(
                        childO2.getObjectId());

                assertNotNull(parentO2);
                assertEquals(PersistenceState.NEW, parentO2.getPersistenceState());

                assertEquals(1, parentO1.getGroupArray().size());
                assertEquals(1, parentO2.getArtistArray().size());
                assertTrue(parentO2.getArtistArray().contains(parentO1));
                assertTrue(parentO1.getGroupArray().contains(parentO2));
            }
        });
    }
View Full Code Here

        final ObjectContext childContext = context.createChildContext();

        final Artist childO1 = childContext.newObject(Artist.class);
        childO1.setArtistName("o1");

        final ArtGroup childO2 = childContext.newObject(ArtGroup.class);
        childO2.setName("o2");
        childO2.addToArtistArray(childO1);

        childContext.commitChangesToParent();

        final ArtGroup childO3 = childContext.newObject(ArtGroup.class);
        childO3.setName("o3");
        childO1.addToGroupArray(childO3);

        assertEquals(2, childO1.getGroupArray().size());
        assertEquals(1, childO2.getArtistArray().size());
        assertEquals(1, childO3.getArtistArray().size());

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                childContext.commitChangesToParent();

                assertEquals(PersistenceState.COMMITTED, childO1.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO2.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO3.getPersistenceState());

                Artist parentO1 = (Artist) context.getGraphManager().getNode(
                        childO1.getObjectId());

                assertNotNull(parentO1);
                assertEquals(PersistenceState.NEW, parentO1.getPersistenceState());

                ArtGroup parentO2 = (ArtGroup) context.getGraphManager().getNode(
                        childO2.getObjectId());

                assertNotNull(parentO2);
                assertEquals(PersistenceState.NEW, parentO2.getPersistenceState());

                ArtGroup parentO3 = (ArtGroup) context.getGraphManager().getNode(
                        childO3.getObjectId());

                assertNotNull(parentO3);
                assertEquals(PersistenceState.NEW, parentO3.getPersistenceState());

                assertEquals(2, parentO1.getGroupArray().size());
                assertEquals(1, parentO2.getArtistArray().size());
                assertEquals(1, parentO3.getArtistArray().size());
                assertTrue(parentO2.getArtistArray().contains(parentO1));
                assertTrue(parentO3.getArtistArray().contains(parentO1));
                assertTrue(parentO1.getGroupArray().contains(parentO2));
                assertTrue(parentO1.getGroupArray().contains(parentO3));
            }
        });

        childO1.removeFromGroupArray(childO2);

        queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() {

            public void execute() {
                childContext.commitChangesToParent();

                assertEquals(PersistenceState.COMMITTED, childO1.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO2.getPersistenceState());
                assertEquals(PersistenceState.COMMITTED, childO3.getPersistenceState());

                Artist parentO1 = (Artist) context.getGraphManager().getNode(
                        childO1.getObjectId());

                assertNotNull(parentO1);
                assertEquals(PersistenceState.NEW, parentO1.getPersistenceState());

                ArtGroup parentO2 = (ArtGroup) context.getGraphManager().getNode(
                        childO2.getObjectId());

                assertNotNull(parentO2);
                assertEquals(PersistenceState.NEW, parentO2.getPersistenceState());

                ArtGroup parentO3 = (ArtGroup) context.getGraphManager().getNode(
                        childO3.getObjectId());

                assertNotNull(parentO3);
                assertEquals(PersistenceState.NEW, parentO3.getPersistenceState());

                assertEquals(1, parentO1.getGroupArray().size());
                assertEquals(0, parentO2.getArtistArray().size());
                assertEquals(1, parentO3.getArtistArray().size());

                assertTrue(parentO3.getArtistArray().contains(parentO1));
                assertTrue(parentO1.getGroupArray().contains(parentO3));
            }
        });
    }
View Full Code Here

        dbHelper.deleteAll("GALLERY");
    }

    public void testNullifyToOne() {
        // ArtGroup toParentGroup
        ArtGroup parentGroup = (ArtGroup) context.newObject("ArtGroup");
        parentGroup.setName("Parent");

        ArtGroup childGroup = (ArtGroup) context.newObject("ArtGroup");
        childGroup.setName("Child");
        parentGroup.addToChildGroupsArray(childGroup);

        // Check to make sure that the relationships are both exactly correct
        // before starting. We're not really testing this, but it is imperative
        // that it is correct before testing the real details.
        assertEquals(parentGroup, childGroup.getToParentGroup());
        assertTrue(parentGroup.getChildGroupsArray().contains(childGroup));

        // Always good to commit before deleting... bad things happen otherwise
        context.commitChanges();
View Full Code Here

TOP

Related Classes of org.apache.cayenne.testdo.testmap.ArtGroup

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.