aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--server/src/com/vaadin/ui/AbstractSelect.java2
-rw-r--r--server/tests/src/com/vaadin/ui/AbstractSelectTest.java76
2 files changed, 77 insertions, 1 deletions
diff --git a/server/src/com/vaadin/ui/AbstractSelect.java b/server/src/com/vaadin/ui/AbstractSelect.java
index c6abb8e685..b8db329906 100644
--- a/server/src/com/vaadin/ui/AbstractSelect.java
+++ b/server/src/com/vaadin/ui/AbstractSelect.java
@@ -904,7 +904,7 @@ public abstract class AbstractSelect extends AbstractField<Object> implements
* if the underlying container don't support adding items with
* identifiers
*/
- public void addItems(Collection<Object> itemIds)
+ public void addItems(Collection<?> itemIds)
throws UnsupportedOperationException {
addItems(itemIds.toArray());
}
diff --git a/server/tests/src/com/vaadin/ui/AbstractSelectTest.java b/server/tests/src/com/vaadin/ui/AbstractSelectTest.java
new file mode 100644
index 0000000000..83d66ee9d5
--- /dev/null
+++ b/server/tests/src/com/vaadin/ui/AbstractSelectTest.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2000-2014 Vaadin Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.vaadin.ui;
+
+import java.util.ArrayList;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+public class AbstractSelectTest {
+
+ @Test
+ public void addItemsStrings() {
+ NativeSelect ns = new NativeSelect();
+ ns.addItems("Foo", "bar", "baz");
+ Assert.assertEquals(3, ns.size());
+ Assert.assertArrayEquals(new Object[] { "Foo", "bar", "baz" }, ns
+ .getItemIds().toArray());
+ }
+
+ @Test
+ public void addItemsObjects() {
+ Object o1 = new Object();
+ Object o2 = new Object();
+ Object o3 = new Object();
+
+ NativeSelect ns = new NativeSelect();
+ ns.addItems(o1, o2, o3);
+ Assert.assertEquals(3, ns.size());
+ Assert.assertArrayEquals(new Object[] { o1, o2, o3 }, ns.getItemIds()
+ .toArray());
+ }
+
+ @Test
+ public void addItemsStringList() {
+ ArrayList<String> itemIds = new ArrayList<String>();
+ itemIds.add("foo");
+ itemIds.add("bar");
+ itemIds.add("baz");
+ NativeSelect ns = new NativeSelect();
+ ns.addItems(itemIds);
+ Assert.assertEquals(3, ns.size());
+ Assert.assertArrayEquals(new Object[] { "foo", "bar", "baz" }, ns
+ .getItemIds().toArray());
+ }
+
+ @Test
+ public void addItemsObjectList() {
+ Object o1 = new Object();
+ Object o2 = new Object();
+ Object o3 = new Object();
+ ArrayList<Object> itemIds = new ArrayList<Object>();
+ itemIds.add(o1);
+ itemIds.add(o2);
+ itemIds.add(o3);
+ NativeSelect ns = new NativeSelect();
+ ns.addItems(itemIds);
+ Assert.assertEquals(3, ns.size());
+ Assert.assertArrayEquals(new Object[] { o1, o2, o3 }, ns.getItemIds()
+ .toArray());
+
+ }
+}