Package org.kie.server.integrationtests

Source Code of org.kie.server.integrationtests.MultiModuleProjectIntegrationTest

package org.kie.server.integrationtests;

import org.junit.BeforeClass;
import org.junit.Test;
import org.kie.server.api.model.KieContainerResource;
import org.kie.server.api.model.ReleaseId;
import org.kie.server.api.model.ServiceResponse;

import static org.junit.Assert.assertTrue;

public class MultiModuleProjectIntegrationTest extends KieServerBaseIntegrationTest {

    private static ReleaseId releaseIdRules1 = new ReleaseId("org.kie.server.testing", "multimodule-project-rules1",
            "2.0.0.Final");
    private static ReleaseId releaseIdRules2 = new ReleaseId("org.kie.server.testing", "multimodule-project-rules2",
            "2.0.0.Final");


    @BeforeClass
    public static void buildAndDeployArtifacts() {
        buildAndDeployCommonMavenParent();
        // the parent will build and deploy also all of its modules, so no need to deploy them individually
        buildAndDeployMavenProject(ClassLoader.class.getResource("/kjars-sources/multimodule-project").getFile());
    }

    @Test
    public void testCreateMultipleContainersAndExecuteRules() {
        assertSuccess(client.createContainer("multimodule-rules1", new KieContainerResource("multimodule-rules1", releaseIdRules1)));
        assertSuccess(client.createContainer("multimodule-rules2", new KieContainerResource("multimodule-rules2", releaseIdRules2)));
        String payload1 = "<batch-execution lookup=\"kbase.session\">\n" +
                "   <insert out-identifier=\"car\">" +
                "    <org.kie.server.testing.multimodule.domain.Car/>\n" +
                "  </insert>\n" +
                "  <fire-all-rules />\n" +
                "</batch-execution>";
        ServiceResponse<String> response = client.executeCommands("multimodule-rules1", payload1);
        assertSuccess(response);
        String result1 = response.getResult();
        assertResultContainsString(result1, "<result identifier=\"car\">");
        assertResultContainsString(result1, "<message>Driving car!</message>");

        String payload2 = "<batch-execution lookup=\"kbase.session\">\n" +
                "  <insert out-identifier=\"bus\">" +
                "    <org.kie.server.testing.multimodule.domain.Bus/>\n" +
                "  </insert>\n" +
                "  <fire-all-rules />\n" +
                "</batch-execution>";
        ServiceResponse<String> response2 = client.executeCommands("multimodule-rules2", payload2);
        String result2 = response2.getResult();
        assertSuccess(response2);
        assertResultContainsString(result2, "<result identifier=\"bus\">");
        assertResultContainsString(result2, "<message>Driving bus!</message>");
    }

}
TOP

Related Classes of org.kie.server.integrationtests.MultiModuleProjectIntegrationTest

TOP
Copyright © 2018 www.massapi.com. 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.