Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/model/value/TransformationListValueModelAdapterTests.java')
-rw-r--r--jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/model/value/TransformationListValueModelAdapterTests.java328
1 files changed, 0 insertions, 328 deletions
diff --git a/jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/model/value/TransformationListValueModelAdapterTests.java b/jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/model/value/TransformationListValueModelAdapterTests.java
deleted file mode 100644
index ac5bef16ae..0000000000
--- a/jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/model/value/TransformationListValueModelAdapterTests.java
+++ /dev/null
@@ -1,328 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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.utility.tests.internal.model.value;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-
-import org.eclipse.jpt.utility.internal.CollectionTools;
-import org.eclipse.jpt.utility.internal.Transformer;
-import org.eclipse.jpt.utility.internal.model.AbstractModel;
-import org.eclipse.jpt.utility.internal.model.event.ListChangeEvent;
-import org.eclipse.jpt.utility.internal.model.listener.ListChangeListener;
-import org.eclipse.jpt.utility.internal.model.value.ListValueModel;
-import org.eclipse.jpt.utility.internal.model.value.SimpleListValueModel;
-import org.eclipse.jpt.utility.internal.model.value.TransformationListValueModelAdapter;
-import org.eclipse.jpt.utility.internal.model.value.ValueModel;
-import org.eclipse.jpt.utility.tests.internal.TestTools;
-
-import junit.framework.TestCase;
-
-public class TransformationListValueModelAdapterTests extends TestCase {
- private ListValueModel listHolder;
- private ListValueModel transformedListHolder;
- ListChangeEvent event;
- String eventType;
-
- private static final String ADD = "add";
- private static final String REMOVE = "remove";
- private static final String REPLACE = "replace";
- private static final String MOVE = "move";
- private static final String CLEAR = "clear";
- private static final String CHANGE = "change";
-
-
- public TransformationListValueModelAdapterTests(String name) {
- super(name);
- }
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- this.listHolder = new SimpleListValueModel(this.buildList());
- this.transformedListHolder = this.buildTransformedListHolder(this.listHolder);
- }
-
- private List buildList() {
- List result = new ArrayList();
- result.add("foo");
- result.add("bar");
- result.add("baz");
- return result;
- }
-
- private List buildTransformedList() {
- return this.transform(this.buildList());
- }
-
- private List transform(List list) {
- List result = new ArrayList(list.size());
- for (Iterator stream = list.iterator(); stream.hasNext(); ) {
- String string = (String) stream.next();
- if (string == null) {
- result.add(null);
- } else {
- result.add(string.toUpperCase());
- }
- }
- return result;
- }
-
- private List buildAddList() {
- List result = new ArrayList();
- result.add("joo");
- result.add("jar");
- result.add("jaz");
- return result;
- }
-
- private List buildTransformedAddList() {
- return this.transform(this.buildAddList());
- }
-
- private List buildRemoveList() {
- List result = new ArrayList();
- result.add("foo");
- result.add("bar");
- return result;
- }
-
- private List buildTransformedRemoveList() {
- return this.transform(this.buildRemoveList());
- }
-
- ListValueModel buildTransformedListHolder(ListValueModel lvm) {
- return new TransformationListValueModelAdapter(lvm) {
- protected Object transformItem(Object item) {
- return (item == null) ? null : ((String) item).toUpperCase();
- }
- };
- }
-
- @Override
- protected void tearDown() throws Exception {
- TestTools.clear(this);
- super.tearDown();
- }
-
- public void testValue() {
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, this.buildListener());
- assertEquals(this.buildTransformedList(), CollectionTools.list((Iterator) this.transformedListHolder.value()));
- }
-
- public void testStaleValue() {
- ListChangeListener listener = this.buildListener();
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, listener);
- assertEquals(this.buildTransformedList(), CollectionTools.list((Iterator) this.transformedListHolder.value()));
-
- this.transformedListHolder.removeListChangeListener(ValueModel.VALUE, listener);
- assertEquals(Collections.EMPTY_LIST, CollectionTools.list((Iterator) this.transformedListHolder.value()));
- }
-
- public void testSize() {
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, this.buildListener());
- assertEquals(this.buildTransformedList().size(), CollectionTools.size((Iterator) this.transformedListHolder.value()));
- }
-
- private boolean transformedListContains(Object item) {
- return CollectionTools.contains((Iterator) this.transformedListHolder.value(), item);
- }
-
- private boolean transformedListContainsAll(Collection items) {
- return CollectionTools.containsAll((Iterator) this.transformedListHolder.value(), items);
- }
-
- private boolean transformedListContainsAny(Collection items) {
- List transformedList = CollectionTools.list((ListIterator) this.transformedListHolder.value());
- for (Iterator stream = items.iterator(); stream.hasNext(); ) {
- if (transformedList.contains(stream.next())) {
- return true;
- }
- }
- return false;
- }
-
- public void testAddItem() {
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, this.buildListener());
-
- assertFalse(this.transformedListContains("JOO"));
- this.listHolder.addItem(2, "joo");
- assertTrue(this.transformedListContains("JOO"));
-
- assertFalse(this.transformedListContains(null));
- this.listHolder.addItem(0, null);
- assertTrue(this.transformedListContains(null));
- }
-
- public void testAddItems() {
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, this.buildListener());
-
- assertFalse(this.transformedListContainsAny(this.buildTransformedAddList()));
- this.listHolder.addItems(2, this.buildAddList());
- assertTrue(this.transformedListContainsAll(this.buildTransformedAddList()));
- }
-
- public void testRemoveItem() {
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, this.buildListener());
-
- assertTrue(this.transformedListContains("BAR"));
- this.listHolder.removeItem(this.buildList().indexOf("bar"));
- assertFalse(this.transformedListContains("BAR"));
-
- this.listHolder.addItem(1, null);
- assertTrue(this.transformedListContains(null));
- this.listHolder.removeItem(1);
- assertFalse(this.transformedListContains(null));
- }
-
- public void testRemoveItems() {
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, this.buildListener());
-
- assertTrue(this.transformedListContainsAll(this.buildTransformedRemoveList()));
- this.listHolder.removeItems(0, 2);
- assertFalse(this.transformedListContainsAny(this.buildTransformedRemoveList()));
- }
-
- public void testListChangeGeneric() {
- this.transformedListHolder.addListChangeListener(this.buildListener());
- this.verifyListChange();
- }
-
- public void testListChangeNamed() {
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, this.buildListener());
- this.verifyListChange();
- }
-
- private void verifyListChange() {
- this.event = null;
- this.eventType = null;
- this.listHolder.addItem(1, "joo");
- this.verifyEvent(ADD, 1, "JOO");
-
- this.event = null;
- this.eventType = null;
- this.listHolder.addItem(1, null);
- this.verifyEvent(ADD, 1, null);
-
- this.event = null;
- this.eventType = null;
- this.listHolder.removeItem(1);
- this.verifyEvent(REMOVE, 1, null);
-
- this.event = null;
- this.eventType = null;
- this.listHolder.removeItem(1);
- this.verifyEvent(REMOVE, 1, "JOO");
-
- this.event = null;
- this.eventType = null;
- this.listHolder.addItems(0, this.buildList());
- this.verifyEvent(ADD);
- assertEquals(this.buildTransformedList(), CollectionTools.list(this.event.items()));
-
- this.event = null;
- this.eventType = null;
- this.listHolder.replaceItem(0, "joo");
- this.verifyEvent(REPLACE);
- assertFalse(CollectionTools.contains(this.event.items(), "FOO"));
- assertTrue(CollectionTools.contains(this.event.items(), "JOO"));
- }
-
- private ListChangeListener buildListener() {
- return new ListChangeListener() {
- public void itemsAdded(ListChangeEvent e) {
- TransformationListValueModelAdapterTests.this.eventType = ADD;
- TransformationListValueModelAdapterTests.this.event = e;
- }
- public void itemsRemoved(ListChangeEvent e) {
- TransformationListValueModelAdapterTests.this.eventType = REMOVE;
- TransformationListValueModelAdapterTests.this.event = e;
- }
- public void itemsReplaced(ListChangeEvent e) {
- TransformationListValueModelAdapterTests.this.eventType = REPLACE;
- TransformationListValueModelAdapterTests.this.event = e;
- }
- public void itemsMoved(ListChangeEvent e) {
- TransformationListValueModelAdapterTests.this.eventType = MOVE;
- TransformationListValueModelAdapterTests.this.event = e;
- }
- public void listCleared(ListChangeEvent e) {
- TransformationListValueModelAdapterTests.this.eventType = CLEAR;
- TransformationListValueModelAdapterTests.this.event = e;
- }
- public void listChanged(ListChangeEvent e) {
- TransformationListValueModelAdapterTests.this.eventType = CHANGE;
- TransformationListValueModelAdapterTests.this.event = e;
- }
- };
- }
-
- private void verifyEvent(String type) {
- assertEquals(type, this.eventType);
- assertEquals(this.transformedListHolder, this.event.getSource());
- assertEquals(ValueModel.VALUE, this.event.listName());
- }
-
- private void verifyEvent(String type, int index, Object item) {
- this.verifyEvent(type);
- assertEquals(index, this.event.index());
- assertEquals(item, this.event.items().next());
- }
-
- public void testHasListeners() {
- /*
- * adding listeners to the transformed list will cause listeners
- * to be added to the wrapped list;
- * likewise, removing listeners from the transformed list will
- * cause listeners to be removed from the wrapped list
- */
- assertFalse(((AbstractModel) this.listHolder).hasAnyListChangeListeners(ValueModel.VALUE));
-
- ListChangeListener listener = this.buildListener();
-
- this.transformedListHolder.addListChangeListener(ValueModel.VALUE, listener);
- assertTrue(((AbstractModel) this.listHolder).hasAnyListChangeListeners(ValueModel.VALUE));
-
- this.transformedListHolder.removeListChangeListener(ValueModel.VALUE, listener);
- assertFalse(((AbstractModel) this.listHolder).hasAnyListChangeListeners(ValueModel.VALUE));
-
- this.transformedListHolder.addListChangeListener(listener);
- assertTrue(((AbstractModel) this.listHolder).hasAnyListChangeListeners(ValueModel.VALUE));
-
- this.transformedListHolder.removeListChangeListener(listener);
- assertFalse(((AbstractModel) this.listHolder).hasAnyListChangeListeners(ValueModel.VALUE));
- }
-
-
- /**
- * execute the same set of tests again, but by passing a Transformer to the adapter
- * (as opposed to overriding #transformItem(Object))
- */
- public static class TransformerTests extends TransformationListValueModelAdapterTests {
- public TransformerTests(String name) {
- super(name);
- }
- ListValueModel buildTransformedListHolder(ListValueModel lvm) {
- return new TransformationListValueModelAdapter(lvm, this.buildTransformer());
- }
- private Transformer buildTransformer() {
- return new Transformer() {
- public Object transform(Object o) {
- return (o == null) ? null : ((String) o).toUpperCase();
- }
- };
- }
- }
-
-}

Back to the top