Package org.openengsb.itests.exam.models

Examples of org.openengsb.itests.exam.models.TestModelDecorator


    }

    @Test
    @SuppressWarnings("unchecked")
    public void testEKBInsertCommitAndQueryWithContextId_shouldReturnModelOnlyOnCorrectContext() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setName("testmodel");
        model.setEdbId("createevent/7");
        EKBCommit commit = getTestEKBCommit().addInsert(model.getModel());
        persist.commit(commit);
        ContextHolder.get().setCurrentContextId("othercontext");
        TestModelDecorator model2 = getTestModelDecorator();
        model2.setName("testmodel");
        model2.setEdbId("createevent/8");
        commit = getTestEKBCommit().addInsert(model2.getModel());
        persist.commit(commit);

        QueryRequest request = QueryRequest.query("name", "testmodel");
        List<Object> result = (List<Object>) query.query(getTestModel(), request);
        assertThat(result.size(), is(2));
        request.setContextId(CONTEXT);
        result = (List<Object>) query.query(getTestModel(), request);
        assertThat(result.size(), is(1));
        assertThat(new TestModelDecorator(result.get(0)).getEdbId(), is("createevent/7"));
        request.setContextId("othercontext");
        result = (List<Object>) query.query(getTestModel(), request);
        assertThat(result.size(), is(1));
        assertThat(new TestModelDecorator(result.get(0)).getEdbId(), is("createevent/8"));
        request.setContextId("somenonesensecontext");
        result = (List<Object>) query.query(getTestModel(), request);
        assertThat(result.size(), is(0));
        ContextHolder.get().setCurrentContextId(CONTEXT);
    }
View Full Code Here


        ContextHolder.get().setCurrentContextId(CONTEXT);
    }

    @Test
    public void testEKBUpdateCommit_shouldWork() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setName("test1");
        model.setEdbId("batchevent/1");
        EKBCommit commit = getTestEKBCommit().addInsert(model.getModel());
        persist.commit(commit);

        EDBObject obj = edbService.getObject(getModelOid("batchevent/1"));
        String name1 = obj.getString("name");
        Integer version1 = obj.getObject(EDBConstants.MODEL_VERSION, Integer.class);

        model.setName("test2");
        commit = getTestEKBCommit().addUpdate(model.getModel());
        TestModelDecorator model2 = getTestModelDecorator();
        model2.setName("test3");
        model2.setEdbId("batchevent/2");
        commit.addInsert(model2.getModel());
        persist.commit(commit);

        obj = edbService.getObject(getModelOid("batchevent/1"));
        String name2 = obj.getString("name");
        Integer version2 = obj.getObject(EDBConstants.MODEL_VERSION, Integer.class);
View Full Code Here

        assertThat(version3, is(1));
    }

    @Test(expected = EKBException.class)
    public void testEKBDeleteCommitWithNonExistingOid_shouldThrowError() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setEdbId("deleteevent/1");
        EKBCommit commit = getTestEKBCommit().addDelete(model.getModel());
        persist.commit(commit);
    }
View Full Code Here

        persist.commit(commit);
    }

    @Test
    public void testEKBUpdateCommit_shouldUpdateModel() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setName("test1");
        model.setEdbId("updateevent/2");
        EKBCommit commit = getTestEKBCommit().addInsert(model.getModel());
        persist.commit(commit);

        EDBObject obj = edbService.getObject(getModelOid("updateevent/2"));
        String name1 = obj.getString("name");
        Integer version1 = obj.getObject(EDBConstants.MODEL_VERSION, Integer.class);
        model.setName("test2");
        commit = getTestEKBCommit().addUpdate(model.getModel());
        persist.commit(commit);

        obj = edbService.getObject(getModelOid("updateevent/2"));
        String name2 = obj.getString("name");
        Integer version2 = obj.getObject(EDBConstants.MODEL_VERSION, Integer.class);
View Full Code Here

        assertThat(result.getInserts().size(), is(1));
    }

    @Test
    public void testEKBConflictCommitEvent_shouldResolveInNoConflict() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setName("test");
        model.setEdbId("updateevent/3");
        EKBCommit commit = getTestEKBCommit().addInsert(model.getModel());
        persist.commit(commit);

        EDBObject obj = edbService.getObject(getModelOid("updateevent/3"));
        Integer version1 = obj.getObject(EDBConstants.MODEL_VERSION, Integer.class);
        OpenEngSBModelEntry entry = new OpenEngSBModelEntry(EDBConstants.MODEL_VERSION, 0, Integer.class);
        ModelWrapper.wrap(model.getModel()).addOpenEngSBModelEntry(entry);
        commit = getTestEKBCommit().addUpdate(model.getModel());
        persist.commit(commit);

        // results in no conflict because the values are the same even if the version is different
        obj = edbService.getObject(getModelOid("updateevent/3"));
        Integer version2 = obj.getObject(EDBConstants.MODEL_VERSION, Integer.class);
View Full Code Here

        assertThat(version2, is(2));
    }

    @Test(expected = EKBException.class)
    public void testEKBConflictCommitEvent_shouldResolveInConflict() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setName("test1");
        model.setEdbId("updateevent/4");
        EKBCommit commit = getTestEKBCommit().addInsert(model.getModel());
        persist.commit(commit);

        model.setName("test2");
        OpenEngSBModelEntry entry = new OpenEngSBModelEntry(EDBConstants.MODEL_VERSION, 0, Integer.class);
        ModelWrapper.wrap(model.getModel()).addOpenEngSBModelEntry(entry);
        commit = getTestEKBCommit().addUpdate(model.getModel());
        persist.commit(commit);
    }
View Full Code Here

        persist.commit(commit);
    }

    @Test
    public void testSupportOfSimpleSubModels_shouldWork() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setName("test");
        model.setEdbId("testSub/1");

        SubModelDecorator sub = getSubModelDecorator();
        sub.setName("sub");
        sub.setEdbId("testSub/2");
        model.setSubModel(sub.getModel());

        EKBCommit commit = getTestEKBCommit().addInsert(model.getModel());
        persist.commit(commit);

        EDBObject mainObject = edbService.getObject(getModelOid("testSub/1"));
        EDBObject subObject = edbService.getObject(getModelOid("testSub/2"));
View Full Code Here

        assertThat(mainObject.getString("subModel"), is(getModelOid("testSub/2")));
    }

    @Test
    public void testSupportOfListOfSubModels_shouldWork() throws Exception {
        TestModelDecorator model = getTestModelDecorator();
        model.setName("test");
        model.setEdbId("testSub/3");

        SubModelDecorator sub1 = getSubModelDecorator();
        sub1.setName("sub1");
        sub1.setEdbId("testSub/4");
        SubModelDecorator sub2 = getSubModelDecorator();
        sub2.setName("sub2");
        sub2.setEdbId("testSub/5");

        List<Object> subs = new ArrayList<Object>();
        subs.add(sub1.getModel());
        subs.add(sub2.getModel());
        model.setSubs(subs);

        EKBCommit commit = getTestEKBCommit().addInsert(model.getModel());
        persist.commit(commit);

        EDBObject mainObject = edbService.getObject(getModelOid("testSub/3"));
        EDBObject subObject1 = edbService.getObject(getModelOid("testSub/4"));
        EDBObject subObject2 = edbService.getObject(getModelOid("testSub/5"));
View Full Code Here

    }

    @Test
    public void testComplexModelComposition_persistsAndResolvesModelsCorrectly() throws Exception {
        // prepare
        TestModelDecorator root;
        TestModelDecorator child1;
        TestModelDecorator child2;
        TestModelDecorator child11;
        TestModelDecorator child12;
        TestModelDecorator rRoot;
        TestModelDecorator rChild1;
        TestModelDecorator rChild2;
        TestModelDecorator rChild11;
        TestModelDecorator rChild12;
        SubModelDecorator leaf;
        SubModelDecorator rLeaf;

        root = getTestModelDecorator();
        child1 = getTestModelDecorator();
        child2 = getTestModelDecorator();
        child11 = getTestModelDecorator();
        child12 = getTestModelDecorator();
        leaf = getSubModelDecorator();

        List<Object> rootChildren = new ArrayList<>();
        rootChildren.add(child1.getModel());
        rootChildren.add(child2.getModel());

        List<Object> child1Children = new ArrayList<>();
        child1Children.add(child11.getModel());
        child1Children.add(child12.getModel());

        root.setEdbId("root");
        root.setName("root");
        child1.setEdbId("child1");
        child1.setName("child1");
        child2.setEdbId("child2");
        child2.setName("child2");
        child11.setEdbId("child11");
        child11.setName("child11");
        child12.setEdbId("child12");
        child12.setName("child12");
        leaf.setEdbId("leaf");
        leaf.setName("leaf");

        child11.setSubModel(leaf.getModel());
        child1.setChildren(child1Children);
        root.setChildren(rootChildren);

        // test
        EKBCommit commit = getTestEKBCommit().addInsert(root.getModel());
        persist.commit(commit);

        rRoot = new TestModelDecorator(query.getModel(getTestModel(), getModelOid("root")));

        // assert
        assertThat(rRoot.getEdbId(), is("root"));
        assertThat(rRoot.getChildren(), notNullValue());

        List<?> resultChildren = rRoot.getChildren();
        assertThat(resultChildren.size(), is(2));

        rChild1 = new TestModelDecorator(resultChildren.get(0));
        rChild2 = new TestModelDecorator(resultChildren.get(1));

        assertThat(rChild1.getEdbId(), is("child1"));
        assertThat(rChild1.getChildren(), notNullValue());

        assertThat(rChild2.getEdbId(), is("child2"));

        List<Object> rChild1Children = rChild1.getChildren();
        assertThat(rChild1Children.size(), is(2));

        rChild11 = new TestModelDecorator(rChild1Children.get(0));
        rChild12 = new TestModelDecorator(rChild1Children.get(1));

        assertThat(rChild11.getEdbId(), is("child11"));
        assertThat(rChild12.getEdbId(), is("child12"));

        rLeaf = new SubModelDecorator(rChild11.getSubModel());
        assertThat(rLeaf.getEdbId(), is("leaf"));
    }
View Full Code Here

    }

    @Test
    public void testComplexModelComposition_cascadesDeleteCorrectly() throws Exception {
        // prepare
        TestModelDecorator root;
        TestModelDecorator child1;
        TestModelDecorator child2;
        TestModelDecorator child11;
        TestModelDecorator child12;
        SubModelDecorator leaf;

        root = getTestModelDecorator();
        child1 = getTestModelDecorator();
        child2 = getTestModelDecorator();
        child11 = getTestModelDecorator();
        child12 = getTestModelDecorator();
        leaf = getSubModelDecorator();

        List<Object> rootChildren = new ArrayList<>();
        rootChildren.add(child1.getModel());
        rootChildren.add(child2.getModel());

        List<Object> child1Children = new ArrayList<>();
        child1Children.add(child11.getModel());
        child1Children.add(child12.getModel());

        root.setEdbId("root/1");
        root.setName("root/1");
        child1.setEdbId("child1/1");
        child1.setName("child1/1");
        child2.setEdbId("child2/1");
        child2.setName("child2/1");
        child11.setEdbId("child11/1");
        child11.setName("child11/1");
        child12.setEdbId("child12/1");
        child12.setName("child12/1");
        leaf.setEdbId("leaf/1");
        leaf.setName("leaf/1");

        child11.setSubModel(leaf.getModel());
        child1.setChildren(child1Children);
View Full Code Here

TOP

Related Classes of org.openengsb.itests.exam.models.TestModelDecorator

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.