2
* Created on 28.03.2006
5
package org.jdesktop.swingx.hyperlink;
7
import java.awt.event.ActionEvent;
9
import javax.swing.Action;
11
import junit.framework.TestCase;
13
import org.jdesktop.swingx.hyperlink.AbstractHyperlinkAction;
14
import org.jdesktop.test.PropertyChangeReport;
15
import org.junit.runner.RunWith;
16
import org.junit.runners.JUnit4;
17
import org.junit.Test;
18
import org.junit.Before;
19
import org.junit.After;
24
* @author Jeanette Winzenburg, Berlin
26
@RunWith(JUnit4.class)
27
public class HyperlinkActionTest extends TestCase {
30
private PropertyChangeReport report;
33
public void setUpJ4() throws Exception {
38
public void tearDownJ4() throws Exception {
44
* test if auto-installed visited property is respected.
48
public void testConstructorsAndCustomTargetInstall() {
49
Object target = new Object();
50
final boolean visitedIsTrue = true;
51
AbstractHyperlinkAction linkAction = new AbstractHyperlinkAction<Object>(target) {
53
public void actionPerformed(ActionEvent e) {
54
// TODO Auto-generated method stub
59
protected void installTarget() {
60
super.installTarget();
61
setVisited(visitedIsTrue);
67
assertEquals(visitedIsTrue, linkAction.isVisited());
71
* test constructors with parameters
75
public void testConstructors() {
76
Object target = new Object();
77
AbstractHyperlinkAction<Object> linkAction = new AbstractHyperlinkAction<Object>(target) {
79
public void actionPerformed(ActionEvent e) {
80
// TODO Auto-generated method stub
85
assertEquals(target, linkAction.getTarget());
86
assertFalse(linkAction.isVisited());
89
* test visited/target properties of LinkAction.
93
public void testLinkAction() {
94
AbstractHyperlinkAction<Object> linkAction = new AbstractHyperlinkAction<Object>(null) {
96
public void actionPerformed(ActionEvent e) {
97
// TODO Auto-generated method stub
102
linkAction.addPropertyChangeListener(report);
104
boolean visited = linkAction.isVisited();
105
assertFalse(visited);
106
linkAction.setVisited(!visited);
107
assertEquals(!visited, linkAction.isVisited());
108
assertEquals(1, report.getEventCount(AbstractHyperlinkAction.VISITED_KEY));
111
// testing target property
112
assertNull(linkAction.getTarget());
113
Object target = new Object();
114
linkAction.setTarget(target);
115
assertEquals(target, linkAction.getTarget());
116
assertEquals(1, report.getEventCount("target"));
117
// testing documented default side-effects of un/installTarget
118
assertEquals(target.toString(), linkAction.getName());
119
assertFalse(linkAction.isVisited());
120
assertEquals(1, report.getEventCount(Action.NAME));
121
assertEquals(1, report.getEventCount(AbstractHyperlinkAction.VISITED_KEY));
122
// fired the expected events only.
123
assertEquals(3, report.getEventCount());
127
protected void setUp() throws Exception {
129
report = new PropertyChangeReport();