mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-13 14:12:11 +00:00
added test cases for the registration of ResultsPresenter and their correct call mechanism
This commit is contained in:
1 parent
1205a02356
commit
e6c00db523
6 files changed
+156
-7
No files matched your search
@@ -2,11 +2,8 @@
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="src" path="test"/>
|
||||
<classpathentry kind="lib" path="C:/Development/gwt-2.8.2/gwt-user.jar"/>
|
||||
<classpathentry kind="lib" path="C:/Development/gwt-2.8.2/gwt-dev.jar"/>
|
||||
<classpathentry kind="lib" path="C:/Development/gwt-2.8.2/validation-api-1.0.0.GA.jar"/>
|
||||
<classpathentry kind="lib" path="C:/Development/gwt-2.8.2/validation-api-1.0.0.GA-sources.jar"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
|
||||
<classpathentry kind="output" path="war/WEB-INF/classes"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
@@ -7,7 +7,9 @@ Bundle-Vendor: SAP
|
||||
Automatic-Module-Name: com.sap.sse.datamining.ui.test
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||
Require-Bundle: org.junit,
|
||||
com.google.gwt.user;bundle-version="2.8.2",
|
||||
com.sap.sse.datamining.ui,
|
||||
com.sap.sse.gwt;bundle-version="1.0.0",
|
||||
slf4j.api;bundle-version="1.6.4",
|
||||
com.sap.sse.common,
|
||||
com.sap.sse.datamining.shared
|
||||
+1
@@ -10,6 +10,7 @@
|
||||
<inherits name='com.google.gwt.user.User'/>
|
||||
|
||||
<!-- Other module inherits -->
|
||||
<inherits name='com.sap.sse.datamining.SSEDataMining'/>
|
||||
|
||||
<!-- Specify the paths for translatable code -->
|
||||
<source path='client'/>
|
||||
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
package com.sap.sse.datamining.ui.test.client.presentation;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.HashMap;
|
||||
|
||||
import com.sap.sse.datamining.shared.data.QueryResultState;
|
||||
import com.sap.sse.datamining.shared.impl.dto.QueryResultDTO;
|
||||
|
||||
public class DummyQueryResultDTO<ResultType extends Serializable> extends QueryResultDTO<ResultType> {
|
||||
|
||||
private static final long serialVersionUID = 4163808455941696613L;
|
||||
|
||||
public DummyQueryResultDTO(Class<ResultType> resultType) {
|
||||
super(QueryResultState.NORMAL, resultType, new HashMap<>());
|
||||
}
|
||||
}
|
||||
+85
@@ -0,0 +1,85 @@
|
||||
package com.sap.sse.datamining.ui.test.client.presentation;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.google.gwt.dom.client.Style.Unit;
|
||||
import com.google.gwt.user.client.ui.DockLayoutPanel;
|
||||
import com.google.gwt.user.client.ui.Widget;
|
||||
import com.sap.sse.common.settings.Settings;
|
||||
import com.sap.sse.datamining.shared.impl.dto.QueryResultDTO;
|
||||
import com.sap.sse.datamining.ui.client.presentation.AbstractResultsPresenter;
|
||||
import com.sap.sse.datamining.ui.client.presentation.TabbedResultsPresenter;
|
||||
import com.sap.sse.gwt.client.shared.components.SettingsDialogComponent;
|
||||
|
||||
/**
|
||||
* Dummy class for testing the
|
||||
* {@link TabbedResultsPresenter#registerResultPresenter(Class, com.sap.sse.datamining.ui.client.ResultsPresenter)}
|
||||
* method. Therefore its {@link #showResult(QueryResultDTO)} method is overridden and simply stores a reference of this
|
||||
* presenter instance.
|
||||
*
|
||||
* @author D064866
|
||||
*
|
||||
*/
|
||||
public class DummyResultsPresenter extends AbstractResultsPresenter<Settings> {
|
||||
|
||||
private final DockLayoutPanel layoutPanel;
|
||||
private final List<DummyResultsPresenter> executedResultsPresenter;
|
||||
|
||||
public DummyResultsPresenter(List<DummyResultsPresenter> executeResultsPresenter) {
|
||||
super(null, null);
|
||||
this.executedResultsPresenter = executeResultsPresenter;
|
||||
layoutPanel = new DockLayoutPanel(Unit.PCT);
|
||||
}
|
||||
|
||||
/**
|
||||
* Stores <code>this</code> ResultsPresenter for test purposes.
|
||||
*/
|
||||
@Override
|
||||
public void showResult(QueryResultDTO<?> result) {
|
||||
executedResultsPresenter.add(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getId() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getLocalizedShortName() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSettings() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SettingsDialogComponent<Settings> getSettingsDialogComponent(Settings useTheseSettings) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Settings getSettings() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateSettings(Settings newSettings) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDependentCssClassName() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Widget getPresentationWidget() {
|
||||
return layoutPanel;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void internalShowResults(QueryResultDTO<?> result) {
|
||||
}
|
||||
|
||||
}
|
||||
+50
-2
@@ -1,6 +1,15 @@
|
||||
package com.sap.sse.datamining.ui.test.client;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import com.google.gwt.junit.client.GWTTestCase;
|
||||
import com.sap.sse.datamining.ui.client.presentation.MultiResultsPresenter;
|
||||
import com.sap.sse.datamining.ui.client.presentation.PlainResultsPresenter;
|
||||
import com.sap.sse.datamining.ui.client.presentation.ResultsChart;
|
||||
import com.sap.sse.datamining.ui.client.presentation.TabbedResultsPresenter;
|
||||
import com.sap.sse.datamining.ui.test.client.presentation.DummyQueryResultDTO;
|
||||
import com.sap.sse.datamining.ui.test.client.presentation.DummyResultsPresenter;
|
||||
|
||||
/**
|
||||
* GWT JUnit tests must extend GWTTestCase.
|
||||
@@ -14,7 +23,46 @@ public class TestSSEDataMiningUi extends GWTTestCase {
|
||||
return "com.sap.sse.datamining.ui.test.TestSSEDataMiningUiJUnit";
|
||||
}
|
||||
|
||||
public void testRegisterResultsPresenter() {
|
||||
assertTrue(true);
|
||||
/**
|
||||
* Tests the mechanism {@link TabbedResultsPresenter#registerResultPresenter(Class, ResultsPresenter)}.
|
||||
*/
|
||||
public void testAvoidDuplicateResultTypeRegistration() {
|
||||
TabbedResultsPresenter presenter = new TabbedResultsPresenter(null, null, null);
|
||||
|
||||
presenter.registerResultPresenter(String.class, new PlainResultsPresenter(null, null));
|
||||
presenter.registerResultPresenter(Double.class, new MultiResultsPresenter(null, null, null));
|
||||
try {
|
||||
presenter.registerResultPresenter(String.class, new ResultsChart(null, null, true, null));
|
||||
fail();
|
||||
} catch (IllegalStateException e) {
|
||||
assertTrue(true);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests the mechanism {@link TabbedResultsPresenter#showResult(QueryResultDTO)}.
|
||||
*/
|
||||
public void testShowResultWithCorrectResultsPresenter() {
|
||||
TabbedResultsPresenter presenter = new TabbedResultsPresenter(null, null, null);
|
||||
List<DummyResultsPresenter> executedPresenter = new ArrayList<>();
|
||||
|
||||
DummyResultsPresenter stringResultsPresenter = new DummyResultsPresenter(executedPresenter);
|
||||
DummyResultsPresenter doubleResultsPresenter = new DummyResultsPresenter(executedPresenter);
|
||||
|
||||
presenter.registerResultPresenter(String.class, stringResultsPresenter);
|
||||
presenter.registerResultPresenter(Double.class, doubleResultsPresenter);
|
||||
|
||||
presenter.showResult(new DummyQueryResultDTO<>(String.class));
|
||||
assertTrue(executedPresenter.size() == 1);
|
||||
assertEquals(executedPresenter.get(0), stringResultsPresenter);
|
||||
|
||||
presenter.showResult(new DummyQueryResultDTO<>(Double.class));
|
||||
assertTrue(executedPresenter.size() == 2);
|
||||
assertEquals(executedPresenter.get(1), doubleResultsPresenter);
|
||||
|
||||
presenter.showResult(new DummyQueryResultDTO<>(Number.class));
|
||||
assertTrue(executedPresenter.size() == 2);
|
||||
assertEquals(executedPresenter.get(0), stringResultsPresenter);
|
||||
assertEquals(executedPresenter.get(1), doubleResultsPresenter);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user