aboutsummaryrefslogtreecommitdiffstats
path: root/server/src/test
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <teemusa@vaadin.com>2016-11-21 18:43:41 +0200
committerHenri Sara <hesara@vaadin.com>2016-11-22 08:28:30 +0000
commit38a14a9621057a6016eada7271d8f3acdd4eb77d (patch)
treec323c79d2539a405814b786d39c56bf6b843b611 /server/src/test
parentc75f71c74a53c0ca538da4785589ffb756dc0f2e (diff)
downloadvaadin-framework-38a14a9621057a6016eada7271d8f3acdd4eb77d.tar.gz
vaadin-framework-38a14a9621057a6016eada7271d8f3acdd4eb77d.zip
Add DataProvider.setFilter method
Change-Id: I87193d3d2c66a880c2be165cfd49926fa290010b
Diffstat (limited to 'server/src/test')
-rw-r--r--server/src/test/java/com/vaadin/server/data/provider/ListDataProviderTest.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/server/src/test/java/com/vaadin/server/data/provider/ListDataProviderTest.java b/server/src/test/java/com/vaadin/server/data/provider/ListDataProviderTest.java
index 6a53aae528..29a234061f 100644
--- a/server/src/test/java/com/vaadin/server/data/provider/ListDataProviderTest.java
+++ b/server/src/test/java/com/vaadin/server/data/provider/ListDataProviderTest.java
@@ -11,6 +11,7 @@ import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
+import com.vaadin.server.SerializablePredicate;
import com.vaadin.server.data.DataProvider;
import com.vaadin.server.data.ListDataProvider;
import com.vaadin.server.data.Query;
@@ -216,4 +217,20 @@ public class ListDataProviderTest {
dataProvider.size(new Query<>(
strBean -> strBean.getValue().contains("Foo"))));
}
+
+ @Test
+ public void filteringListDataProvider_defaultFilter() {
+ SerializablePredicate<StrBean> filter = s -> s.getRandomNumber() > 4;
+ // Intentionally lost filter type. Not actually filterable anymore.
+ DataProvider<StrBean, ?> filtered = dataProvider.setFilter(filter);
+
+ Assert.assertEquals("Filter not applied, unexpected item count",
+ dataProvider.size(new Query<>(filter)),
+ filtered.size(new Query<>()));
+
+ Assert.assertEquals("Further filtering succeeded",
+ filtered.size(new Query<>()),
+ filtered.size((Query) new Query<SerializablePredicate<StrBean>>(
+ s -> s.getValue().equals("Foo"))));
+ }
}