diff options
author | Teemu Suo-Anttila <teemusa@vaadin.com> | 2016-11-25 13:56:36 +0200 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2016-11-28 11:31:40 +0000 |
commit | 411b8dedb02be7ed1a9332fc1f965e583bd313cc (patch) | |
tree | 1de234c9343b5bd5ac524ee465b69669024f79de /server/src/test/java | |
parent | 24c541c32ce83aff9c4217f5dd9fff1fa816c13e (diff) | |
download | vaadin-framework-411b8dedb02be7ed1a9332fc1f965e583bd313cc.tar.gz vaadin-framework-411b8dedb02be7ed1a9332fc1f965e583bd313cc.zip |
Type Listing for DataProvider to allow custom filter types
Listing has been moved from AbstractListing to each individual Component.
ComboBox is now typed to String filter.
Fixes issues with declarative read of items.
Change-Id: I6918f9f8c426dcbd81546150c2cf9ed49a02bf50
Diffstat (limited to 'server/src/test/java')
9 files changed, 59 insertions, 24 deletions
diff --git a/server/src/test/java/com/vaadin/tests/design/DeclarativeTestBaseBase.java b/server/src/test/java/com/vaadin/tests/design/DeclarativeTestBaseBase.java index 161d053cca..5d91415193 100644 --- a/server/src/test/java/com/vaadin/tests/design/DeclarativeTestBaseBase.java +++ b/server/src/test/java/com/vaadin/tests/design/DeclarativeTestBaseBase.java @@ -102,11 +102,11 @@ public abstract class DeclarativeTestBaseBase<T extends Component> { protected void assertEquals(String message, Object o1, Object o2) { if (o1 == null) { - Assert.assertEquals(message, null, o2); + Assert.assertNull(message, o2); return; } if (o2 == null) { - Assert.assertEquals(message, null, o1); + Assert.assertNull(message, o1); return; } diff --git a/server/src/test/java/com/vaadin/tests/server/component/abstractlisting/AbstractListingDeclarativeTest.java b/server/src/test/java/com/vaadin/tests/server/component/abstractlisting/AbstractListingDeclarativeTest.java index c056836dc0..590d7ec8ea 100644 --- a/server/src/test/java/com/vaadin/tests/server/component/abstractlisting/AbstractListingDeclarativeTest.java +++ b/server/src/test/java/com/vaadin/tests/server/component/abstractlisting/AbstractListingDeclarativeTest.java @@ -23,6 +23,7 @@ import java.util.List; import org.junit.Test; +import com.vaadin.data.Listing; import com.vaadin.server.ExternalResource; import com.vaadin.server.FileResource; import com.vaadin.server.Resource; @@ -45,9 +46,9 @@ import com.vaadin.ui.ItemCaptionGenerator; * <p> * Common {@link AbstractComponent} properties are tested in * {@link AbstractComponentDeclarativeTestBase} - * + * * @see AbstractComponentDeclarativeTestBase - * + * * @author Vaadin Ltd * * @@ -55,7 +56,7 @@ import com.vaadin.ui.ItemCaptionGenerator; * a component type */ @SuppressWarnings({ "unchecked", "rawtypes" }) -public abstract class AbstractListingDeclarativeTest<T extends AbstractListing> +public abstract class AbstractListingDeclarativeTest<T extends AbstractListing & Listing> extends AbstractComponentDeclarativeTestBase<T> { private static final String EXTERNAL_URL = "http://example.com/example.gif"; diff --git a/server/src/test/java/com/vaadin/tests/server/component/abstractmultiselect/AbstractMultiSelectDeclarativeTest.java b/server/src/test/java/com/vaadin/tests/server/component/abstractmultiselect/AbstractMultiSelectDeclarativeTest.java index da8127ea8d..53d826592b 100644 --- a/server/src/test/java/com/vaadin/tests/server/component/abstractmultiselect/AbstractMultiSelectDeclarativeTest.java +++ b/server/src/test/java/com/vaadin/tests/server/component/abstractmultiselect/AbstractMultiSelectDeclarativeTest.java @@ -22,6 +22,7 @@ import java.util.List; import org.junit.Test; +import com.vaadin.data.Listing; import com.vaadin.tests.server.component.abstractlisting.AbstractListingDeclarativeTest; import com.vaadin.ui.AbstractMultiSelect; @@ -30,17 +31,17 @@ import com.vaadin.ui.AbstractMultiSelect; * <p> * Test inherits test methods from a {@link AbstractListingDeclarativeTest} * class providing here only common cases for {@link AbstractMultiSelect}s. - * + * * @see AbstractListingDeclarativeTest - * + * * @author Vaadin Ltd * * * @param <T> * a component type */ -@SuppressWarnings({ "unchecked", "rawtypes" }) -public abstract class AbstractMultiSelectDeclarativeTest<T extends AbstractMultiSelect> +@SuppressWarnings({ "rawtypes", "unchecked" }) +public abstract class AbstractMultiSelectDeclarativeTest<T extends AbstractMultiSelect & Listing> extends AbstractListingDeclarativeTest<T> { @Override diff --git a/server/src/test/java/com/vaadin/tests/server/component/abstractsingleselect/AbstractSingleSelectDeclarativeTest.java b/server/src/test/java/com/vaadin/tests/server/component/abstractsingleselect/AbstractSingleSelectDeclarativeTest.java index 48b71ffcf1..1ef1f7addf 100644 --- a/server/src/test/java/com/vaadin/tests/server/component/abstractsingleselect/AbstractSingleSelectDeclarativeTest.java +++ b/server/src/test/java/com/vaadin/tests/server/component/abstractsingleselect/AbstractSingleSelectDeclarativeTest.java @@ -22,6 +22,7 @@ import java.util.List; import org.junit.Test; +import com.vaadin.data.Listing; import com.vaadin.tests.server.component.abstractlisting.AbstractListingDeclarativeTest; import com.vaadin.ui.AbstractSingleSelect; import com.vaadin.ui.ItemCaptionGenerator; @@ -31,7 +32,7 @@ import com.vaadin.ui.ItemCaptionGenerator; * <p> * Test inherits test methods from a {@link AbstractListingDeclarativeTest} * class providing here only common cases for {@link AbstractSingleSelect}s. - * + * * @author Vaadin Ltd * * @@ -39,7 +40,7 @@ import com.vaadin.ui.ItemCaptionGenerator; * a component type */ @SuppressWarnings({ "unchecked", "rawtypes" }) -public abstract class AbstractSingleSelectDeclarativeTest<T extends AbstractSingleSelect> +public abstract class AbstractSingleSelectDeclarativeTest<T extends AbstractSingleSelect & Listing> extends AbstractListingDeclarativeTest<T> { @Override diff --git a/server/src/test/java/com/vaadin/tests/server/component/checkboxgroup/CheckBoxGroupDeclarativeTest.java b/server/src/test/java/com/vaadin/tests/server/component/checkboxgroup/CheckBoxGroupDeclarativeTest.java index c28776f0dc..f94938b765 100644 --- a/server/src/test/java/com/vaadin/tests/server/component/checkboxgroup/CheckBoxGroupDeclarativeTest.java +++ b/server/src/test/java/com/vaadin/tests/server/component/checkboxgroup/CheckBoxGroupDeclarativeTest.java @@ -29,9 +29,9 @@ import com.vaadin.ui.CheckBoxGroup; * Only {@link CheckBoxGroup#setHtmlContentAllowed(boolean)} is tested here * explicitly. All other tests are in the super class ( * {@link AbstractMultiSelectDeclarativeTest}). - * + * * @see AbstractMultiSelectDeclarativeTest - * + * * @author Vaadin Ltd * */ diff --git a/server/src/test/java/com/vaadin/tests/server/component/combobox/ComboBoxDeclarativeTest.java b/server/src/test/java/com/vaadin/tests/server/component/combobox/ComboBoxDeclarativeTest.java index d0ec56e0a7..c35af4a6a2 100644 --- a/server/src/test/java/com/vaadin/tests/server/component/combobox/ComboBoxDeclarativeTest.java +++ b/server/src/test/java/com/vaadin/tests/server/component/combobox/ComboBoxDeclarativeTest.java @@ -31,9 +31,9 @@ import com.vaadin.ui.StyleGenerator; * <p> * There are only ComboBox specific properties explicit tests. All other tests * are in the super class ( {@link AbstractSingleSelectDeclarativeTest}). - * + * * @see AbstractSingleSelectDeclarativeTest - * + * * @author Vaadin Ltd * */ diff --git a/server/src/test/java/com/vaadin/ui/AbstractListingTest.java b/server/src/test/java/com/vaadin/ui/AbstractListingTest.java index b2f303ae24..369efd6e89 100644 --- a/server/src/test/java/com/vaadin/ui/AbstractListingTest.java +++ b/server/src/test/java/com/vaadin/ui/AbstractListingTest.java @@ -11,6 +11,7 @@ import org.junit.Assert; import org.junit.Before; import org.junit.Test; +import com.vaadin.data.Listing; import com.vaadin.server.data.BackEndDataProvider; import com.vaadin.server.data.DataProvider; import com.vaadin.server.data.ListDataProvider; @@ -22,7 +23,8 @@ import elemental.json.JsonObject; public class AbstractListingTest { - private final class TestListing extends AbstractSingleSelect<String> { + private final class TestListing extends AbstractSingleSelect<String> + implements Listing<String, DataProvider<String, ?>> { /** * Used to execute data generation @@ -38,7 +40,19 @@ public class AbstractListingTest { } @Override - protected void readItems(Element design, DesignContext context) { + protected List<String> readItems(Element design, + DesignContext context) { + return null; + } + + @Override + public DataProvider<String, ?> getDataProvider() { + return internalGetDataProvider(); + } + + @Override + public void setDataProvider(DataProvider<String, ?> dataProvider) { + internalSetDataProvider(dataProvider); } } diff --git a/server/src/test/java/com/vaadin/ui/AbstractMultiSelectTest.java b/server/src/test/java/com/vaadin/ui/AbstractMultiSelectTest.java index e31e6e28db..ff8d1fcead 100644 --- a/server/src/test/java/com/vaadin/ui/AbstractMultiSelectTest.java +++ b/server/src/test/java/com/vaadin/ui/AbstractMultiSelectTest.java @@ -26,7 +26,6 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.stream.Collectors; import java.util.stream.Stream; -import com.vaadin.server.data.DataProvider; import org.junit.After; import org.junit.Assert; import org.junit.Before; @@ -38,22 +37,24 @@ import org.junit.runners.Parameterized.Parameters; import org.mockito.Mockito; import com.vaadin.data.HasValue.ValueChangeEvent; +import com.vaadin.data.Listing; import com.vaadin.event.selection.MultiSelectionEvent; import com.vaadin.event.selection.MultiSelectionListener; +import com.vaadin.server.data.DataProvider; import com.vaadin.shared.Registration; import com.vaadin.shared.data.selection.MultiSelectServerRpc; @RunWith(Parameterized.class) -public class AbstractMultiSelectTest { +public class AbstractMultiSelectTest<S extends AbstractMultiSelect<String> & Listing<String, DataProvider<String, ?>>> { @Parameters(name = "{0}") - public static Iterable<AbstractMultiSelect<String>> multiSelects() { + public static Iterable<?> multiSelects() { return Arrays.asList(new CheckBoxGroup<>(), new TwinColSelect<>(), new ListSelect<>()); } @Parameter - public AbstractMultiSelect<String> selectToTest; + public S selectToTest; private MultiSelectServerRpc rpc; diff --git a/server/src/test/java/com/vaadin/ui/AbstractSingleSelectTest.java b/server/src/test/java/com/vaadin/ui/AbstractSingleSelectTest.java index 4ea3fdcfa0..ee129d0e0a 100644 --- a/server/src/test/java/com/vaadin/ui/AbstractSingleSelectTest.java +++ b/server/src/test/java/com/vaadin/ui/AbstractSingleSelectTest.java @@ -32,8 +32,10 @@ import org.junit.Test; import org.mockito.Mockito; import com.vaadin.data.HasValue.ValueChangeEvent; +import com.vaadin.data.Listing; import com.vaadin.event.selection.SingleSelectionEvent; import com.vaadin.event.selection.SingleSelectionListener; +import com.vaadin.server.data.DataProvider; import com.vaadin.server.data.provider.bov.Person; import com.vaadin.shared.Registration; import com.vaadin.shared.data.DataCommunicatorClientRpc; @@ -48,7 +50,8 @@ public class AbstractSingleSelectTest { private List<Person> selectionChanges; - private static class PersonListing extends AbstractSingleSelect<Person> { + private static class PersonListing extends AbstractSingleSelect<Person> + implements Listing<Person, DataProvider<Person, ?>> { @Override protected Element writeItem(Element design, Person item, @@ -57,7 +60,19 @@ public class AbstractSingleSelectTest { } @Override - protected void readItems(Element design, DesignContext context) { + protected List<Person> readItems(Element design, + DesignContext context) { + return null; + } + + @Override + public DataProvider<Person, ?> getDataProvider() { + return internalGetDataProvider(); + } + + @Override + public void setDataProvider(DataProvider<Person, ?> dataProvider) { + internalSetDataProvider(dataProvider); } } @@ -240,7 +255,9 @@ public class AbstractSingleSelectTest { } @Override - protected void readItems(Element design, DesignContext context) { + protected List<String> readItems(Element design, + DesignContext context) { + return null; } }; |