01: /*******************************************************************************
02: * Copyright (c) 2006 Brad Reynolds and others.
03: * All rights reserved. This program and the accompanying materials
04: * are made available under the terms of the Eclipse Public License v1.0
05: * which accompanies this distribution, and is available at
06: * http://www.eclipse.org/legal/epl-v10.html
07: *
08: * Contributors:
09: * Brad Reynolds - initial API and implementation
10: * Brad Reynolds - bug 164247
11: ******************************************************************************/package org.eclipse.jface.tests.databinding.viewers;
12:
13: import java.util.HashSet;
14:
15: import org.eclipse.core.databinding.beans.BeansObservables;
16: import org.eclipse.core.databinding.observable.set.WritableSet;
17: import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;
18: import org.eclipse.jface.examples.databinding.ModelObject;
19: import org.eclipse.jface.tests.databinding.AbstractDefaultRealmTestCase;
20:
21: /**
22: * @since 1.1
23: */
24: public class ObservableMapLabelProviderTest extends
25: AbstractDefaultRealmTestCase {
26:
27: public void testGetColumnText() throws Exception {
28: WritableSet set = new WritableSet(new HashSet(), Item.class);
29: Item item = new Item();
30: String value = "value";
31: item.setValue(value);
32: set.add(item);
33:
34: ObservableMapLabelProvider labelProvider = new ObservableMapLabelProvider(
35: BeansObservables.observeMap(set, Item.class, "value"));
36: assertEquals(item.getValue(), labelProvider.getColumnText(item,
37: 0));
38: }
39:
40: public void testGetColumnTextNullValue() throws Exception {
41: WritableSet set = new WritableSet(new HashSet(), Item.class);
42: Item item = new Item();
43: set.add(item);
44:
45: ObservableMapLabelProvider labelProvider = new ObservableMapLabelProvider(
46: BeansObservables.observeMap(set, Item.class, "value"));
47: assertNull(item.getValue());
48: assertEquals("", labelProvider.getColumnText(item, 0));
49: }
50:
51: private static class Item extends ModelObject {
52: private String value;
53:
54: public String getValue() {
55: return value;
56: }
57:
58: public void setValue(String value) {
59: String old = this .value;
60:
61: firePropertyChange("value", old, this.value = value);
62: }
63: }
64: }
|