Skip to content

Commit

Permalink
Extract single select stuff to its own test UI
Browse files Browse the repository at this point in the history
Change-Id: I12e42e91ea6e82fb8d5b8ce9a23dd8600c467056
  • Loading branch information
Legioth authored and Vaadin Code Review committed Sep 12, 2016
1 parent 5a08001 commit 363dce9
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 38 deletions.
Expand Up @@ -15,7 +15,6 @@ public abstract class AbstractListingTestUI<T extends AbstractListing<Object, ?>
protected void createActions() { protected void createActions() {
super.createActions(); super.createActions();
createItemsMenu(); createItemsMenu();
createSelectionMenu();
} }


protected void createItemsMenu() { protected void createItemsMenu() {
Expand All @@ -35,28 +34,7 @@ protected void createItemsMenu() {
}); });
} }


protected void createSelectionMenu() {
LinkedHashMap<String, String> options = new LinkedHashMap<>();
options.put("None", null);
options.put("Item 0", "Item 0");
options.put("Item 1", "Item 1");
options.put("Item 2", "Item 2");
options.put("Item 10", "Item 10");
options.put("Item 100", "Item 100");

createSelectAction("Select", "Selection", options, "None",
(c, selected, data) -> {
if (selected != null) {
c.select(selected);
} else {
c.getSelectedItems().forEach(c::deselect);
}
});
}

protected Object[] createItems(int number) { protected Object[] createItems(int number) {
return IntStream.range(0, number) return IntStream.range(0, number).mapToObj(i -> "Item " + i).toArray();
.mapToObj(i -> "Item " + i)
.toArray();
} }
} }
@@ -0,0 +1,57 @@
/*
* Copyright 2000-2016 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.tests.components.abstractlisting;

import java.util.LinkedHashMap;

import com.vaadin.ui.AbstractSingleSelect;

public abstract class AbstractSingleSelectTestUI<T extends AbstractSingleSelect<Object>>
extends AbstractListingTestUI<T> {

@Override
protected void createActions() {
super.createActions();

createSelectionMenu();
createListenerMenu();
}

protected void createListenerMenu() {
createListenerAction("Selection listener", "Listeners", c -> c
.addSelectionListener(e -> log("Selected: " + e.getValue())));
}

protected void createSelectionMenu() {
LinkedHashMap<String, String> options = new LinkedHashMap<>();
options.put("None", null);
options.put("Item 0", "Item 0");
options.put("Item 1", "Item 1");
options.put("Item 2", "Item 2");
options.put("Item 10", "Item 10");
options.put("Item 100", "Item 100");

createSelectAction("Select", "Selection", options, "None",
(c, selected, data) -> {
if (selected != null) {
c.select(selected);
} else {
c.getSelectedItems().forEach(c::deselect);
}
});
}

}
@@ -1,26 +1,14 @@
package com.vaadin.tests.components.nativeselect; package com.vaadin.tests.components.nativeselect;


import com.vaadin.tests.components.abstractlisting.AbstractListingTestUI; import com.vaadin.tests.components.abstractlisting.AbstractSingleSelectTestUI;
import com.vaadin.ui.NativeSelect; import com.vaadin.ui.NativeSelect;


public class NativeSelects extends public class NativeSelects
AbstractListingTestUI<NativeSelect<Object>> { extends AbstractSingleSelectTestUI<NativeSelect<Object>> {


@Override @Override
@SuppressWarnings({ "unchecked", "rawtypes" }) @SuppressWarnings({ "unchecked", "rawtypes" })
protected Class<NativeSelect<Object>> getTestClass() { protected Class<NativeSelect<Object>> getTestClass() {
return (Class) NativeSelect.class; return (Class) NativeSelect.class;
} }

@Override
protected void createActions() {
super.createActions();
createListenerMenu();
}

protected void createListenerMenu() {
createListenerAction("Selection listener", "Listeners",
c -> c.addSelectionListener(
e -> log("Selected: " + e.getValue())));
}
} }

0 comments on commit 363dce9

Please sign in to comment.