Search in sources :

Example 16 with Scenario

use of org.drools.workbench.models.testscenarios.shared.Scenario in project drools by kiegroup.

the class ScenarioTest method testIsFactNameUsed.

@Test
public void testIsFactNameUsed() {
    Scenario sc = new Scenario();
    sc.getGlobals().add(new FactData("X", "x", null, false));
    sc.getFixtures().add(new FactData("Q", "q", null, false));
    sc.getFixtures().add(new ExecutionTrace());
    assertTrue(sc.isFactNameReserved("x"));
    assertTrue(sc.isFactNameReserved("q"));
    assertFalse(sc.isFactNameReserved("w"));
    sc = new Scenario();
    assertFalse(sc.isFactNameReserved("w"));
}
Also used : FactData(org.drools.workbench.models.testscenarios.shared.FactData) ExecutionTrace(org.drools.workbench.models.testscenarios.shared.ExecutionTrace) Scenario(org.drools.workbench.models.testscenarios.shared.Scenario) Test(org.junit.Test)

Example 17 with Scenario

use of org.drools.workbench.models.testscenarios.shared.Scenario in project drools by kiegroup.

the class ScenarioTest method testInsertBetween.

@Test
public void testInsertBetween() {
    Scenario sc = new Scenario();
    VerifyRuleFired vf = new VerifyRuleFired();
    sc.insertBetween(null, vf);
    assertEquals(1, sc.getFixtures().size());
    assertEquals(vf, sc.getFixtures().get(0));
    VerifyRuleFired vf2 = new VerifyRuleFired();
    sc.getFixtures().add(vf2);
    VerifyRuleFired vf3 = new VerifyRuleFired();
    sc.insertBetween(vf, vf3);
    assertEquals(3, sc.getFixtures().size());
    assertEquals(vf, sc.getFixtures().get(0));
    assertEquals(vf2, sc.getFixtures().get(1));
    assertEquals(vf3, sc.getFixtures().get(2));
    VerifyRuleFired vf4 = new VerifyRuleFired();
    sc.insertBetween(vf2, vf4);
    assertEquals(4, sc.getFixtures().size());
    assertEquals(3, sc.getFixtures().indexOf(vf4));
    assertEquals(2, sc.getFixtures().indexOf(vf3));
    // assertEquals(vf4, sc.fixtures.get(3));
    assertEquals(1, sc.getFixtures().indexOf(vf2));
    // assertEquals(vf2, sc.fixtures.get(2));
    assertEquals(0, sc.getFixtures().indexOf(vf));
    VerifyRuleFired vf5 = new VerifyRuleFired();
    sc.insertBetween(null, vf5);
    assertEquals(5, sc.getFixtures().size());
    assertEquals(4, sc.getFixtures().indexOf(vf5));
    sc = new Scenario();
    sc.getFixtures().add(vf);
    ExecutionTrace ex = new ExecutionTrace();
    sc.getFixtures().add(ex);
    sc.insertBetween(null, vf2);
    assertEquals(0, sc.getFixtures().indexOf(vf));
    assertEquals(1, sc.getFixtures().indexOf(vf2));
    assertEquals(2, sc.getFixtures().indexOf(ex));
    assertEquals(3, sc.getFixtures().size());
    sc.insertBetween(ex, vf3);
    assertEquals(4, sc.getFixtures().size());
    assertEquals(0, sc.getFixtures().indexOf(vf));
    assertEquals(1, sc.getFixtures().indexOf(vf2));
    assertEquals(2, sc.getFixtures().indexOf(ex));
    assertEquals(3, sc.getFixtures().indexOf(vf3));
    ExecutionTrace ex2 = new ExecutionTrace();
    sc.getFixtures().add(ex2);
    sc.insertBetween(ex, vf4);
    assertEquals(6, sc.getFixtures().size());
    assertEquals(0, sc.getFixtures().indexOf(vf));
    assertEquals(1, sc.getFixtures().indexOf(vf2));
    assertEquals(2, sc.getFixtures().indexOf(ex));
    assertEquals(3, sc.getFixtures().indexOf(vf3));
    assertEquals(4, sc.getFixtures().indexOf(vf4));
    assertEquals(5, sc.getFixtures().indexOf(ex2));
    sc.insertBetween(ex2, vf5);
    assertEquals(7, sc.getFixtures().size());
    assertEquals(0, sc.getFixtures().indexOf(vf));
    assertEquals(1, sc.getFixtures().indexOf(vf2));
    assertEquals(2, sc.getFixtures().indexOf(ex));
    assertEquals(3, sc.getFixtures().indexOf(vf3));
    assertEquals(4, sc.getFixtures().indexOf(vf4));
    assertEquals(5, sc.getFixtures().indexOf(ex2));
    assertEquals(6, sc.getFixtures().indexOf(vf5));
    sc = new Scenario();
    sc.getFixtures().add(ex);
    sc.insertBetween(null, vf);
    assertEquals(2, sc.getFixtures().size());
    assertEquals(0, sc.getFixtures().indexOf(vf));
    assertEquals(1, sc.getFixtures().indexOf(ex));
}
Also used : VerifyRuleFired(org.drools.workbench.models.testscenarios.shared.VerifyRuleFired) ExecutionTrace(org.drools.workbench.models.testscenarios.shared.ExecutionTrace) Scenario(org.drools.workbench.models.testscenarios.shared.Scenario) Test(org.junit.Test)

Example 18 with Scenario

use of org.drools.workbench.models.testscenarios.shared.Scenario in project drools by kiegroup.

the class ScenarioTest method testMapFactTypes.

@Test
public void testMapFactTypes() {
    Scenario sc = new Scenario();
    sc.getFixtures().add(new FactData("X", "q", null, false));
    sc.getGlobals().add(new FactData("Q", "x", null, false));
    Map r = sc.getVariableTypes();
    assertEquals(2, r.size());
    assertEquals("X", r.get("q"));
    assertEquals("Q", r.get("x"));
}
Also used : FactData(org.drools.workbench.models.testscenarios.shared.FactData) Map(java.util.Map) Scenario(org.drools.workbench.models.testscenarios.shared.Scenario) Test(org.junit.Test)

Example 19 with Scenario

use of org.drools.workbench.models.testscenarios.shared.Scenario in project drools by kiegroup.

the class ScenarioTest method testVariablesInScope.

@Test
public void testVariablesInScope() {
    Scenario sc = new Scenario();
    sc.getGlobals().add(new FactData("X", "x", new ArrayList(), false));
    sc.getFixtures().add(new FactData("Q", "q", new ArrayList(), true));
    sc.getFixtures().add(new FactData("Z", "z", new ArrayList(), false));
    ExecutionTrace ex1 = new ExecutionTrace();
    sc.getFixtures().add(ex1);
    sc.getFixtures().add(new RetractFact("z"));
    sc.getFixtures().add(new FactData("Y", "y", new ArrayList(), false));
    ExecutionTrace ex2 = new ExecutionTrace();
    sc.getFixtures().add(ex2);
    List l = sc.getFactNamesInScope(ex1, true);
    assertEquals(3, l.size());
    assertEquals("q", l.get(0));
    assertEquals("z", l.get(1));
    assertEquals("x", l.get(2));
    l = sc.getFactNamesInScope(ex1, false);
    assertEquals(2, l.size());
    assertFalse(l.contains(sc.getGlobals().get(0)));
    l = sc.getFactNamesInScope(ex2, true);
    assertEquals(3, l.size());
    assertEquals("q", l.get(0));
    assertEquals("y", l.get(1));
    assertEquals("x", l.get(2));
    l = sc.getFactNamesInScope(null, true);
    assertEquals(0, l.size());
}
Also used : FactData(org.drools.workbench.models.testscenarios.shared.FactData) ArrayList(java.util.ArrayList) ExecutionTrace(org.drools.workbench.models.testscenarios.shared.ExecutionTrace) ArrayList(java.util.ArrayList) List(java.util.List) RetractFact(org.drools.workbench.models.testscenarios.shared.RetractFact) Scenario(org.drools.workbench.models.testscenarios.shared.Scenario) Test(org.junit.Test)

Example 20 with Scenario

use of org.drools.workbench.models.testscenarios.shared.Scenario in project drools-wb by kiegroup.

the class ScenarioTestEditorServiceImpl method constructContent.

@Override
protected TestScenarioModelContent constructContent(Path path, Overview overview) {
    final Scenario scenario = load(path);
    final String packageName = moduleService.resolvePackage(path).getPackageName();
    final PackageDataModelOracle dataModelOracle = getDataModel(path);
    final PackageDataModelOracleBaselinePayload dataModel = new PackageDataModelOracleBaselinePayload();
    final Set<String> usedFullyQualifiedClassNames = getUsedFullyQualifiedClassNames(scenario, dataModelOracle);
    DataModelOracleUtilities.populateDataModel(dataModelOracle, dataModel, usedFullyQualifiedClassNames);
    // Signal opening to interested parties
    resourceOpenedEvent.fire(new ResourceOpenedEvent(path, safeSessionInfo));
    return new TestScenarioModelContent(scenario, overview, packageName, dataModel);
}
Also used : PackageDataModelOracleBaselinePayload(org.kie.workbench.common.services.datamodel.model.PackageDataModelOracleBaselinePayload) TestScenarioModelContent(org.drools.workbench.screens.testscenario.model.TestScenarioModelContent) PackageDataModelOracle(org.kie.soup.project.datamodel.oracle.PackageDataModelOracle) ResourceOpenedEvent(org.uberfire.workbench.events.ResourceOpenedEvent) Scenario(org.drools.workbench.models.testscenarios.shared.Scenario)

Aggregations

Scenario (org.drools.workbench.models.testscenarios.shared.Scenario)59 Test (org.junit.Test)45 FactData (org.drools.workbench.models.testscenarios.shared.FactData)24 ExecutionTrace (org.drools.workbench.models.testscenarios.shared.ExecutionTrace)20 VerifyFact (org.drools.workbench.models.testscenarios.shared.VerifyFact)17 KieSession (org.kie.api.runtime.KieSession)14 Import (org.kie.soup.project.datamodel.imports.Import)14 VerifyField (org.drools.workbench.models.testscenarios.shared.VerifyField)13 FieldData (org.drools.workbench.models.testscenarios.shared.FieldData)12 ArrayList (java.util.ArrayList)11 VerifyRuleFired (org.drools.workbench.models.testscenarios.shared.VerifyRuleFired)9 Expectation (org.drools.workbench.models.testscenarios.shared.Expectation)6 Path (org.uberfire.backend.vfs.Path)6 Field (org.drools.workbench.models.testscenarios.shared.Field)5 HashMap (java.util.HashMap)4 RetractFact (org.drools.workbench.models.testscenarios.shared.RetractFact)4 Failure (org.junit.runner.notification.Failure)4 RunListener (org.junit.runner.notification.RunListener)4 RunNotifier (org.junit.runner.notification.RunNotifier)4 Date (java.util.Date)3