diff options
Diffstat (limited to 'common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListModelAdapterTests.java')
-rw-r--r-- | common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListModelAdapterTests.java | 320 |
1 files changed, 0 insertions, 320 deletions
diff --git a/common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListModelAdapterTests.java b/common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListModelAdapterTests.java deleted file mode 100644 index 0be426de9f..0000000000 --- a/common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListModelAdapterTests.java +++ /dev/null @@ -1,320 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2010 Oracle. All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0, which accompanies this distribution - * and is available at http://www.eclipse.org/legal/epl-v10.html. - * - * Contributors: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.common.utility.tests.internal.model.value.swing; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Comparator; -import java.util.Iterator; -import java.util.List; -import java.util.SortedSet; -import java.util.TreeSet; - -import javax.swing.ListModel; - -import junit.framework.TestCase; - -import org.eclipse.jpt.common.utility.internal.Bag; -import org.eclipse.jpt.common.utility.internal.HashBag; -import org.eclipse.jpt.common.utility.internal.ReflectionTools; -import org.eclipse.jpt.common.utility.internal.model.value.SimpleCollectionValueModel; -import org.eclipse.jpt.common.utility.internal.model.value.SimpleListValueModel; -import org.eclipse.jpt.common.utility.internal.model.value.SortedListValueModelAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.SortedListValueModelWrapper; -import org.eclipse.jpt.common.utility.internal.model.value.swing.ListModelAdapter; -import org.eclipse.jpt.common.utility.model.listener.ListChangeListener; -import org.eclipse.jpt.common.utility.model.value.CollectionValueModel; -import org.eclipse.jpt.common.utility.model.value.ListValueModel; -import org.eclipse.jpt.common.utility.tests.internal.model.value.CoordinatedList; - -@SuppressWarnings("nls") -public class ListModelAdapterTests extends TestCase { - - public ListModelAdapterTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - // nothing yet... - } - - @Override - protected void tearDown() throws Exception { - // nothing yet... - super.tearDown(); - } - - private ListModelAdapter buildListModel(ListValueModel<String> listHolder) { - return new ListModelAdapter(listHolder) { - @Override - protected ListChangeListener buildListChangeListener() { - return this.buildListChangeListener_(); - } - }; - } - - private ListModel buildListModel(CollectionValueModel<String> collectionHolder) { - return new ListModelAdapter(collectionHolder) { - @Override - protected ListChangeListener buildListChangeListener() { - return this.buildListChangeListener_(); - } - }; - } - - public void testCollectionSynchronization() { - SimpleCollectionValueModel<String> collectionHolder = this.buildCollectionHolder(); - ListModel listModel = this.buildListModel(collectionHolder); - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - assertEquals(6, synchList.size()); - this.compare(listModel, synchList); - - collectionHolder.add("tom"); - collectionHolder.add("dick"); - collectionHolder.add("harry"); - collectionHolder.add(null); - assertEquals(10, synchList.size()); - this.compare(listModel, synchList); - - collectionHolder.remove("foo"); - collectionHolder.remove("jar"); - collectionHolder.remove("harry"); - collectionHolder.remove(null); - assertEquals(6, synchList.size()); - this.compare(listModel, synchList); - } - - public void testListSynchronization() { - SimpleListValueModel<String> listHolder = this.buildListHolder(); - ListModel listModel = this.buildListModel(listHolder); - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - assertEquals(6, synchList.size()); - this.compare(listModel, synchList); - - listHolder.add(6, "tom"); - listHolder.add(7, "dick"); - listHolder.add(8, "harry"); - listHolder.add(9, null); - assertEquals(10, synchList.size()); - this.compare(listModel, synchList); - - listHolder.remove(9); - listHolder.remove(8); - listHolder.remove(4); - listHolder.remove(0); - assertEquals(6, synchList.size()); - this.compare(listModel, synchList); - } - - public void testSetModel() { - SimpleListValueModel<String> listHolder1 = this.buildListHolder(); - ListModelAdapter listModel = this.buildListModel(listHolder1); - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - assertTrue(listHolder1.hasAnyListChangeListeners(ListValueModel.LIST_VALUES)); - assertEquals(6, synchList.size()); - this.compare(listModel, synchList); - - SimpleListValueModel<String> listHolder2 = this.buildListHolder2(); - listModel.setModel(listHolder2); - assertEquals(3, synchList.size()); - this.compare(listModel, synchList); - assertTrue(listHolder1.hasNoListChangeListeners(ListValueModel.LIST_VALUES)); - assertTrue(listHolder2.hasAnyListChangeListeners(ListValueModel.LIST_VALUES)); - - listModel.setModel(new SimpleListValueModel<String>()); - assertEquals(0, synchList.size()); - this.compare(listModel, synchList); - assertTrue(listHolder1.hasNoListChangeListeners(ListValueModel.LIST_VALUES)); - assertTrue(listHolder2.hasNoListChangeListeners(ListValueModel.LIST_VALUES)); - } - - private void compare(ListModel listModel, List<String> list) { - assertEquals(listModel.getSize(), list.size()); - for (int i = 0; i < listModel.getSize(); i++) { - assertEquals(listModel.getElementAt(i), list.get(i)); - } - } - - public void testCollectionSort() { - this.verifyCollectionSort(null); - } - - public void testListSort() { - this.verifyListSort(null); - } - - public void testCustomCollectionSort() { - this.verifyCollectionSort(this.buildCustomComparator()); - } - - public void testCustomListSort() { - this.verifyListSort(this.buildCustomComparator()); - } - - private Comparator<String> buildCustomComparator() { - // sort with reverse order - return new Comparator<String>() { - public int compare(String s1, String s2) { - return s2.compareTo(s1); - } - }; - } - - private void verifyCollectionSort(Comparator<String> comparator) { - SimpleCollectionValueModel<String> collectionHolder = this.buildCollectionHolder(); - ListModel listModel = this.buildListModel(new SortedListValueModelAdapter<String>(collectionHolder, comparator)); - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - assertEquals(6, synchList.size()); - this.compareSort(listModel, synchList, comparator); - - collectionHolder.add("tom"); - collectionHolder.add("dick"); - collectionHolder.add("harry"); - assertEquals(9, synchList.size()); - this.compareSort(listModel, synchList, comparator); - - collectionHolder.remove("foo"); - collectionHolder.remove("jar"); - collectionHolder.remove("harry"); - assertEquals(6, synchList.size()); - this.compareSort(listModel, synchList, comparator); - } - - private void verifyListSort(Comparator<String> comparator) { - SimpleListValueModel<String> listHolder = this.buildListHolder(); - ListModel listModel = this.buildListModel(new SortedListValueModelWrapper<String>(listHolder, comparator)); - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - assertEquals(6, synchList.size()); - this.compareSort(listModel, synchList, comparator); - - listHolder.add(0, "tom"); - listHolder.add(0, "dick"); - listHolder.add(0, "harry"); - assertEquals(9, synchList.size()); - this.compareSort(listModel, synchList, comparator); - - listHolder.remove(8); - listHolder.remove(4); - listHolder.remove(0); - listHolder.remove(5); - assertEquals(5, synchList.size()); - this.compareSort(listModel, synchList, comparator); - } - - private void compareSort(ListModel listModel, List<String> list, Comparator<String> comparator) { - SortedSet<String> ss = new TreeSet<String>(comparator); - for (int i = 0; i < listModel.getSize(); i++) { - ss.add((String) listModel.getElementAt(i)); - } - assertEquals(ss.size(), list.size()); - for (Iterator<String> stream1 = ss.iterator(), stream2 = list.iterator(); stream1.hasNext(); ) { - assertEquals(stream1.next(), stream2.next()); - } - } - - public void testHasListeners() throws Exception { - SimpleListValueModel<String> listHolder = this.buildListHolder(); - assertFalse(listHolder.hasAnyListChangeListeners(ListValueModel.LIST_VALUES)); - - ListModel listModel = this.buildListModel(listHolder); - assertFalse(listHolder.hasAnyListChangeListeners(ListValueModel.LIST_VALUES)); - this.verifyHasNoListeners(listModel); - - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - assertTrue(listHolder.hasAnyListChangeListeners(ListValueModel.LIST_VALUES)); - this.verifyHasListeners(listModel); - - listModel.removeListDataListener(synchList); - assertFalse(listHolder.hasAnyListChangeListeners(ListValueModel.LIST_VALUES)); - this.verifyHasNoListeners(listModel); - } - - public void testGetSize() throws Exception { - SimpleListValueModel<String> listHolder = this.buildListHolder(); - ListModel listModel = this.buildListModel(listHolder); - this.verifyHasNoListeners(listModel); - assertEquals(6, listModel.getSize()); - - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - this.verifyHasListeners(listModel); - assertEquals(6, listModel.getSize()); - - listModel.removeListDataListener(synchList); - this.verifyHasNoListeners(listModel); - assertEquals(6, listModel.getSize()); - } - - public void testGetElementAt() throws Exception { - SimpleListValueModel<String> listHolder = this.buildListHolder(); - ListModel listModel = this.buildListModel(new SortedListValueModelWrapper<String>(listHolder)); - CoordinatedList<String> synchList = new CoordinatedList<String>(listModel); - this.verifyHasListeners(listModel); - assertEquals("bar", listModel.getElementAt(0)); - assertEquals("bar", synchList.get(0)); - } - - private void verifyHasNoListeners(ListModel listModel) throws Exception { - boolean hasNoListeners = ((Boolean) ReflectionTools.executeMethod(listModel, "hasNoListDataListeners")).booleanValue(); - assertTrue(hasNoListeners); - } - - private void verifyHasListeners(ListModel listModel) throws Exception { - boolean hasListeners = ((Boolean) ReflectionTools.executeMethod(listModel, "hasListDataListeners")).booleanValue(); - assertTrue(hasListeners); - } - - private SimpleCollectionValueModel<String> buildCollectionHolder() { - return new SimpleCollectionValueModel<String>(this.buildCollection()); - } - - private Collection<String> buildCollection() { - Bag<String> bag = new HashBag<String>(); - this.populateCollection(bag); - return bag; - } - - private SimpleListValueModel<String> buildListHolder() { - return new SimpleListValueModel<String>(this.buildList()); - } - - private List<String> buildList() { - List<String> list = new ArrayList<String>(); - this.populateCollection(list); - return list; - } - - private void populateCollection(Collection<String> c) { - c.add("foo"); - c.add("bar"); - c.add("baz"); - c.add("joo"); - c.add("jar"); - c.add("jaz"); - } - - private SimpleListValueModel<String> buildListHolder2() { - return new SimpleListValueModel<String>(this.buildList2()); - } - - private List<String> buildList2() { - List<String> list = new ArrayList<String>(); - this.populateCollection2(list); - return list; - } - - private void populateCollection2(Collection<String> c) { - c.add("tom"); - c.add("dick"); - c.add("harry"); - } - -} |