This is an automated email from the ASF dual-hosted git repository.
tiagobento pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-tools.git
The following commit(s) were added to refs/heads/main by this push:
new 723fe3dd27a Improve DMN path management on Legacy SceSim Editor (#2117)
723fe3dd27a is described below
commit 723fe3dd27a4a252176c36fa85a3f3f977dfb291
Author: Yeser Amer <[email protected]>
AuthorDate: Fri Jan 12 18:52:08 2024 +0100
Improve DMN path management on Legacy SceSim Editor (#2117)
---
.../editor/ScenarioSimulationEditorPresenter.java | 4 +--
.../ScenarioSimulationEditorConstants.properties | 2 +-
.../ScenarioSimulationEditorPresenterTest.java | 11 ++++----
.../ScenarioSimulationEditorKogitoWrapper.java | 7 +++---
.../KogitoDMNDataManagementStrategy.java | 29 ++++++++++++----------
.../ScenarioSimulationEditorKogitoWrapperTest.java | 2 --
.../KogitoDMNDataManagementStrategyTest.java | 17 ++++++-------
7 files changed, 35 insertions(+), 37 deletions(-)
diff --git
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenter.java
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenter.java
index 1a8ae1db389..0e50c61f931 100644
---
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenter.java
+++
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenter.java
@@ -156,13 +156,12 @@ public class ScenarioSimulationEditorPresenter {
scenarioBackgroundGridWidget.unregister();
}
- public void showDocks() {
+ public void initializeDocks() {
abstractScenarioSimulationDocksHandler.addDocks();
abstractScenarioSimulationDocksHandler.setScesimEditorId(String.valueOf(scenarioPresenterId));
expandToolsDock();
registerTestToolsCallback();
resetDocks();
- populateRightDocks(TestToolsPresenter.IDENTIFIER);
}
public void hideDocks() {
@@ -519,6 +518,7 @@ public class ScenarioSimulationEditorPresenter {
scenarioMainGridWidget.setContent(model.getSimulation(),
model.getSettings().getType());
scenarioBackgroundGridWidget.setContent(model.getBackground(),
model.getSettings().getType());
// NOTE: keep here initialization of docks related with model
+ initializeDocks();
populateRightDocks(TestToolsPresenter.IDENTIFIER);
populateRightDocks(SettingsPresenter.IDENTIFIER);
CustomBusyPopup.close();
diff --git
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/resources/org/drools/workbench/screens/scenariosimulation/client/resources/i18n/ScenarioSimulationEditorConstants.properties
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/resources/org/drools/workbench/screens/scenariosimulation/client/resources/i18n/Scenari
[...]
index 22c94438881..f3ddd773d19 100644
---
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/resources/org/drools/workbench/screens/scenariosimulation/client/resources/i18n/ScenarioSimulationEditorConstants.properties
+++
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/main/resources/org/drools/workbench/screens/scenariosimulation/client/resources/i18n/ScenarioSimulationEditorConstants.properties
@@ -145,7 +145,7 @@ settings=Settings
name=Name
type=Type
dmnPathErrorLabel=Impossible to find ''{0}'' file. Please select one.
-dmnPathErrorDetailedLabel=Referred DMN file ''{0}'' is invalid or not present.
Please provide a valid DMN file and update Settings dock in the right. Message:
''{1}''
+dmnPathErrorDetailedLabel=ACTION REQUIRED: Referred DMN file ''{0}'' is no
longer valid. Please provide a valid DMN file and update the DMN model in the
Settings dock. Message: ''{1}''
missingSelectedType=Missing selected type
missingDmnPath=Missing DMN path
coverageReport=Coverage Report
diff --git
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/test/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenterTest.java
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/test/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenterTest.java
index 37918b4892a..615409dbe14 100644
---
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/test/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenterTest.java
+++
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-client/src/test/java/org/drools/workbench/screens/scenariosimulation/client/editor/ScenarioSimulationEditorPresenterTest.java
@@ -192,24 +192,22 @@ public class ScenarioSimulationEditorPresenterTest
extends AbstractScenarioSimul
}
@Test
- public void showDocks_PlaceStatusOpen() {
- presenterSpy.showDocks();
+ public void initializeDocks_PlaceStatusOpen() {
+ presenterSpy.initializeDocks();
verify(abstractScenarioSimulationDocksHandlerMock,
times(1)).addDocks();
verify(abstractScenarioSimulationDocksHandlerMock,
times(1)).setScesimEditorId(String.valueOf(presenterSpy.scenarioPresenterId));
verify(presenterSpy, times(1)).registerTestToolsCallback();
verify(presenterSpy, times(1)).resetDocks();
- verify(presenterSpy,
times(1)).populateRightDocks(TestToolsPresenter.IDENTIFIER);
}
@Test
- public void showDocks_PlaceStatusClose() {
- presenterSpy.showDocks();
+ public void initializeDocks_PlaceStatusClose() {
+ presenterSpy.initializeDocks();
verify(abstractScenarioSimulationDocksHandlerMock,
times(1)).addDocks();
verify(abstractScenarioSimulationDocksHandlerMock,
times(1)).setScesimEditorId(String.valueOf(presenterSpy.scenarioPresenterId));
verify(presenterSpy, times(1)).expandToolsDock();
verify(presenterSpy, times(1)).registerTestToolsCallback();
verify(presenterSpy, times(1)).resetDocks();
- verify(presenterSpy,
times(1)).populateRightDocks(TestToolsPresenter.IDENTIFIER);
}
@Test
@@ -536,6 +534,7 @@ public class ScenarioSimulationEditorPresenterTest extends
AbstractScenarioSimul
public void getModelSuccessCallbackMethod() {
scenarioGridWidgetSpy.selectAndFocus();
presenterSpy.getModelSuccessCallbackMethod(dataManagementStrategyMock,
modelLocal);
+ verify(presenterSpy, times(1)).initializeDocks();
verify(presenterSpy,
times(1)).populateRightDocks(TestToolsPresenter.IDENTIFIER);
verify(presenterSpy,
times(1)).populateRightDocks(SettingsPresenter.IDENTIFIER);
verify(scenarioGridWidgetSpy,
times(1)).setContent(modelLocal.getSimulation(), settingsLocal.getType());
diff --git
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/ScenarioSimulationEditorKogitoWrapper.java
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/Scenari
[...]
index 207795e9b64..6e8d7e77e6a 100644
---
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/ScenarioSimulationEditorKogitoWrapper.java
+++
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/ScenarioSimulationEditorKogitoWrapper.java
@@ -215,7 +215,6 @@ public class ScenarioSimulationEditorKogitoWrapper extends
MultiPageEditorContai
private void ensureScenarioGridIsSet() {
scenarioSimulationEditorPresenter.getView().setScenarioGridWidgetAsContent();
- scenarioSimulationEditorPresenter.showDocks();
scenarioSimulationEditorPresenter.getView().setScenarioTabBarVisibility(true);
}
@@ -418,9 +417,9 @@ public class ScenarioSimulationEditorKogitoWrapper extends
MultiPageEditorContai
false);
dataManagementStrategy = new
KogitoDMODataManagementStrategy(kogitoOracle);
} else {
- dataManagementStrategy = new
KogitoDMNDataManagementStrategy(scenarioSimulationEditorPresenter.getEventBus(),
-
dmnDataManager,
-
scenarioSimulationKogitoDMNMarshallerService);
+ dataManagementStrategy = new
KogitoDMNDataManagementStrategy(dmnDataManager,
+
scenarioSimulationKogitoDMNMarshallerService,
+
scenarioSimulationEditorPresenter);
}
dataManagementStrategy.setModel(model);
scenarioSimulationEditorPresenter.getModelSuccessCallbackMethod(dataManagementStrategy,
model);
diff --git
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/strategies/KogitoDMNDataManagementStrategy.java
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/st
[...]
index 9e7c8d64304..12013294cfd 100644
---
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/strategies/KogitoDMNDataManagementStrategy.java
+++
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/main/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/strategies/KogitoDMNDataManagementStrategy.java
@@ -19,11 +19,10 @@
package
org.drools.workbench.screens.scenariosimulation.kogito.client.editor.strategies;
-import com.google.gwt.event.shared.EventBus;
import
org.drools.workbench.screens.scenariosimulation.client.commands.ScenarioSimulationContext;
+import
org.drools.workbench.screens.scenariosimulation.client.editor.ScenarioSimulationEditorPresenter;
import
org.drools.workbench.screens.scenariosimulation.client.editor.strategies.AbstractDMNDataManagementStrategy;
import org.drools.workbench.screens.scenariosimulation.client.enums.GridWidget;
-import
org.drools.workbench.screens.scenariosimulation.client.events.ScenarioNotificationEvent;
import
org.drools.workbench.screens.scenariosimulation.client.resources.i18n.ScenarioSimulationEditorConstants;
import
org.drools.workbench.screens.scenariosimulation.client.rightpanel.TestToolsView;
import
org.drools.workbench.screens.scenariosimulation.kogito.client.dmn.ScenarioSimulationKogitoDMNDataManager;
@@ -38,15 +37,18 @@ import org.uberfire.workbench.events.NotificationEvent;
public class KogitoDMNDataManagementStrategy extends
AbstractDMNDataManagementStrategy {
- private ScenarioSimulationKogitoDMNDataManager dmnDataManager;
- private ScenarioSimulationKogitoDMNMarshallerService dmnMarshallerService;
+ private final ScenarioSimulationKogitoDMNDataManager dmnDataManager;
+ private final ScenarioSimulationKogitoDMNMarshallerService
dmnMarshallerService;
+ private final ScenarioSimulationEditorPresenter
scenarioSimulationEditorPresenter;
- public KogitoDMNDataManagementStrategy(EventBus eventBus,
-
ScenarioSimulationKogitoDMNDataManager dmnDataManager,
-
ScenarioSimulationKogitoDMNMarshallerService dmnMarshallerService) {
- super(eventBus);
+
+ public
KogitoDMNDataManagementStrategy(ScenarioSimulationKogitoDMNDataManager
dmnDataManager,
+
ScenarioSimulationKogitoDMNMarshallerService
scenarioSimulationKogitoDMNMarshallerService,
+ ScenarioSimulationEditorPresenter
scenarioSimulationEditorPresenter) {
+ super(scenarioSimulationEditorPresenter.getEventBus());
this.dmnDataManager = dmnDataManager;
- this.dmnMarshallerService = dmnMarshallerService;
+ this.dmnMarshallerService =
scenarioSimulationKogitoDMNMarshallerService;
+ this.scenarioSimulationEditorPresenter =
scenarioSimulationEditorPresenter;
}
@Override
@@ -71,10 +73,11 @@ public class KogitoDMNDataManagementStrategy extends
AbstractDMNDataManagementSt
private ErrorCallback<Object> getDMNContentErrorCallback(String
dmnFilePath) {
return (message, throwable) -> {
- eventBus.fireEvent(new
ScenarioNotificationEvent(ScenarioSimulationEditorConstants.INSTANCE.dmnPathErrorDetailedLabel(dmnFilePath,
-
message.toString()),
-
NotificationEvent.NotificationType.ERROR,
- false));
+ scenarioSimulationEditorPresenter.sendNotification(
+
ScenarioSimulationEditorConstants.INSTANCE.dmnPathErrorDetailedLabel(dmnFilePath,
message.toString()),
+ NotificationEvent.NotificationType.ERROR,
+ false);
+ scenarioSimulationEditorPresenter.expandSettingsDock();
return false;
};
}
diff --git
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/ScenarioSimulationEditorKogitoWrapperTest.java
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/Sce
[...]
index 3707cd7a4f3..c3637537054 100644
---
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/ScenarioSimulationEditorKogitoWrapperTest.java
+++
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/ScenarioSimulationEditorKogitoWrapperTest.java
@@ -348,7 +348,6 @@ public class ScenarioSimulationEditorKogitoWrapperTest {
verify(scenarioSimulationEditorPresenterMock,
times(1)).getModelSuccessCallbackMethod(dataManagementStrategyCaptor.capture(),
eq(scenarioSimulationModelMock));
assertTrue(dataManagementStrategyCaptor.getValue() instanceof
KogitoDMODataManagementStrategy);
verify(scenarioSimulationViewMock,
times(1)).setScenarioGridWidgetAsContent();
- verify(scenarioSimulationEditorPresenterMock, times(1)).showDocks();
verify(scenarioSimulationViewMock,
times(1)).setScenarioTabBarVisibility(true);
}
@@ -362,7 +361,6 @@ public class ScenarioSimulationEditorKogitoWrapperTest {
verify(scenarioSimulationEditorPresenterMock,
times(1)).getModelSuccessCallbackMethod(dataManagementStrategyCaptor.capture(),
eq(scenarioSimulationModelMock));
assertTrue(dataManagementStrategyCaptor.getValue() instanceof
KogitoDMNDataManagementStrategy);
verify(scenarioSimulationViewMock,
times(1)).setScenarioGridWidgetAsContent();
- verify(scenarioSimulationEditorPresenterMock, times(1)).showDocks();
verify(scenarioSimulationViewMock,
times(1)).setScenarioTabBarVisibility(true);
}
diff --git
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/strategies/KogitoDMNDataManagementStrategyTest.java
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/edito
[...]
index 28b67f2481a..5da30f77dd2 100644
---
a/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/strategies/KogitoDMNDataManagementStrategyTest.java
+++
b/packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-client/src/test/java/org/drools/workbench/screens/scenariosimulation/kogito/client/editor/strategies/KogitoDMNDataManagementStrategyTest.java
@@ -25,8 +25,8 @@ import java.util.Collections;
import com.google.gwt.event.shared.EventBus;
import com.google.gwtmockito.GwtMockitoTestRunner;
import
org.drools.workbench.screens.scenariosimulation.client.commands.ScenarioSimulationContext;
+import
org.drools.workbench.screens.scenariosimulation.client.editor.ScenarioSimulationEditorPresenter;
import org.drools.workbench.screens.scenariosimulation.client.enums.GridWidget;
-import
org.drools.workbench.screens.scenariosimulation.client.events.ScenarioNotificationEvent;
import
org.drools.workbench.screens.scenariosimulation.client.rightpanel.TestToolsPresenter;
import
org.drools.workbench.screens.scenariosimulation.kogito.client.dmn.ScenarioSimulationKogitoDMNDataManager;
import
org.drools.workbench.screens.scenariosimulation.kogito.client.dmn.model.KogitoDMNModel;
@@ -46,8 +46,7 @@ import org.uberfire.backend.vfs.PathFactory;
import org.uberfire.client.callbacks.Callback;
import org.uberfire.workbench.events.NotificationEvent;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
@@ -60,6 +59,8 @@ public class KogitoDMNDataManagementStrategyTest {
@Mock
private EventBus eventBusMock;
@Mock
+ private ScenarioSimulationEditorPresenter
scenarioSimulationEditorPresenterMock;
+ @Mock
private ScenarioSimulationKogitoDMNDataManager kogitoDMNDataManagerMock;
@Mock
private ScenarioSimulationKogitoDMNMarshallerService
dmnMarshallerServiceMock;
@@ -79,8 +80,6 @@ public class KogitoDMNDataManagementStrategyTest {
private ArgumentCaptor<Callback<KogitoDMNModel>> callbackArgumentCaptor;
@Captor
private ArgumentCaptor<ErrorCallback<Object>> errorCallbackArgumentCaptor;
- @Captor
- private ArgumentCaptor<ScenarioNotificationEvent>
scenarioNotificationEventArgumentCaptor;
private KogitoDMNModel kogitoDMNModel;
private KogitoDMNDataManagementStrategy kogitoDMNDataManagementStrategySpy;
@@ -88,13 +87,14 @@ public class KogitoDMNDataManagementStrategyTest {
@Before
public void setup() {
kogitoDMNModel = new KogitoDMNModel(jsitDefinitionsMock,
Collections.emptyMap());
- kogitoDMNDataManagementStrategySpy = spy(new
KogitoDMNDataManagementStrategy(eventBusMock, kogitoDMNDataManagerMock,
dmnMarshallerServiceMock) {
+ kogitoDMNDataManagementStrategySpy = spy(new
KogitoDMNDataManagementStrategy(kogitoDMNDataManagerMock,
dmnMarshallerServiceMock, scenarioSimulationEditorPresenterMock) {
{
this.dmnFilePath = "path/dmnFile.dmn";
}
});
when(kogitoDMNDataManagementStrategySpy.getSuccessCallback(testToolsPresenterMock,
scenarioSimulationContextMock,
gridWidgetMock)).thenReturn(factModelTupleRemoteCallbackMock);
when(kogitoDMNDataManagerMock.getFactModelTuple(kogitoDMNModel)).thenReturn(factModelTupleMock);
+
when(scenarioSimulationEditorPresenterMock.getEventBus()).thenReturn(eventBusMock);
}
@Test
@@ -109,9 +109,8 @@ public class KogitoDMNDataManagementStrategyTest {
verify(factModelTupleRemoteCallbackMock,
times(1)).callback(factModelTupleMock);
errorCallbackArgumentCaptor.getValue().error("Error Message", new
Exception());
- verify(eventBusMock,
times(1)).fireEvent(scenarioNotificationEventArgumentCaptor.capture());
- assertEquals(NotificationEvent.NotificationType.ERROR,
scenarioNotificationEventArgumentCaptor.getValue().getNotificationType());
-
assertTrue(scenarioNotificationEventArgumentCaptor.getValue().getMessage().contains("Error
Message"));
+ verify(scenarioSimulationEditorPresenterMock,
times(1)).sendNotification(anyString(),
eq(NotificationEvent.NotificationType.ERROR), eq(false));
+ verify(scenarioSimulationEditorPresenterMock,
times(1)).expandSettingsDock();
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]