Author: kono
Date: 2012-04-23 18:22:55 -0700 (Mon, 23 Apr 2012)
New Revision: 28960
Added:
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/AbstractTreeTableModelTest.java
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/DropDownMenuButtonTest.java
Modified:
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/AbstractTreeTableModel.java
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/DropDownMenuButton.java
Log:
refs #875 New unit tests had been added to swing-util-api.
Modified:
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/AbstractTreeTableModel.java
===================================================================
---
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/AbstractTreeTableModel.java
2012-04-24 00:10:24 UTC (rev 28959)
+++
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/AbstractTreeTableModel.java
2012-04-24 01:22:55 UTC (rev 28960)
@@ -46,7 +46,7 @@
/**
* The root of this AbstractTreeTableModel.
*/
- protected Object root;
+ private Object root;
/**
* The {@link EventListenerList} associated with this
AbstractTreeTableModel.
*/
@@ -236,7 +236,7 @@
*
* @return the class of the column specified in the argument.
*/
- public Class getColumnClass(int column) {
+ public Class<?> getColumnClass(int column) {
return Object.class;
}
Modified:
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/DropDownMenuButton.java
===================================================================
---
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/DropDownMenuButton.java
2012-04-24 00:10:24 UTC (rev 28959)
+++
core3/api/trunk/swing-util-api/src/main/java/org/cytoscape/util/swing/DropDownMenuButton.java
2012-04-24 01:22:55 UTC (rev 28960)
@@ -3,66 +3,68 @@
import javax.swing.*;
import java.awt.*;
-
/**
* Button with drop down menu.
- *
- * @CyAPI.Final.Class
- */
+ *
+ * @CyAPI.Final.Class
+ */
public final class DropDownMenuButton extends JButton {
+
private final static long serialVersionUID = 1202339868695691L;
- private final Icon buttonIcon = new MenuArrowIcon();
- /**
- * Creates a new DropDownMenuButton object.
- *
- * @param action The action that this button represents.
- */
- public DropDownMenuButton(final AbstractAction action) {
- super(action);
- this.setFocusPainted(false);
+ private final Icon buttonIcon = new MenuArrowIcon();
- this.setBorder(
- BorderFactory.createEmptyBorder(4, 4, 4,
- 4 + buttonIcon.getIconWidth()));
- }
+ /**
+ * Creates a new DropDownMenuButton object.
+ *
+ * @param action
+ * The action that this button represents.
+ */
+ public DropDownMenuButton(final AbstractAction action) {
+ super(action);
+
+ this.setFocusPainted(false);
+ this.setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4 +
buttonIcon.getIconWidth()));
+ }
- /**
- * {@inheritDoc}
- */
- public void paintComponent(Graphics g) {
- super.paintComponent(g);
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void paintComponent(Graphics g) {
+ super.paintComponent(g);
- Dimension dim = getSize();
- Insets ins = getInsets();
- int x = dim.width - ins.right;
- int y = ins.top +
- ((dim.height - ins.top - ins.bottom - buttonIcon.getIconHeight())
/ 2);
- buttonIcon.paintIcon(this, g, x, y);
- }
+ final Dimension dim = getSize();
+ final Insets ins = getInsets();
+ final int x = dim.width - ins.right;
+ final int y = ins.top + ((dim.height - ins.top - ins.bottom -
buttonIcon.getIconHeight()) / 2);
+ buttonIcon.paintIcon(this, g, x, y);
+ }
- private class MenuArrowIcon
- implements Icon {
- public void paintIcon(Component c, Graphics g, int x, int y) {
- Graphics2D g2 = (Graphics2D) g;
- // Turn AA on
- g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
- RenderingHints.VALUE_ANTIALIAS_ON);
+ private static final class MenuArrowIcon implements Icon {
+
+ @Override
+ public void paintIcon(Component c, Graphics g, int x, int y) {
+ Graphics2D g2 = (Graphics2D) g;
+ // Turn AA on
+ g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
- g2.setColor(Color.black);
- g2.translate(x, y);
- g2.drawLine(2, 3, 6, 3);
- g2.drawLine(3, 4, 5, 4);
- g2.drawLine(4, 5, 4, 5);
- g2.translate(-x, -y);
- }
+ g2.setColor(Color.black);
+ g2.translate(x, y);
+ g2.drawLine(2, 3, 6, 3);
+ g2.drawLine(3, 4, 5, 4);
+ g2.drawLine(4, 5, 4, 5);
+ g2.translate(-x, -y);
+ }
- public int getIconWidth() {
- return 9;
- }
+ @Override
+ public int getIconWidth() {
+ return 9;
+ }
- public int getIconHeight() {
- return 9;
- }
- }
+ @Override
+ public int getIconHeight() {
+ return 9;
+ }
+ }
}
Added:
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/AbstractTreeTableModelTest.java
===================================================================
---
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/AbstractTreeTableModelTest.java
(rev 0)
+++
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/AbstractTreeTableModelTest.java
2012-04-24 01:22:55 UTC (rev 28960)
@@ -0,0 +1,164 @@
+package org.cytoscape.util.swing;
+
+import static org.mockito.Mockito.*;
+
+import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import javax.swing.event.TreeModelEvent;
+import javax.swing.event.TreeModelListener;
+import javax.swing.tree.TreePath;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+
+public class AbstractTreeTableModelTest {
+
+ AbstractTreeTableModel model;
+ @Mock Object root;
+ @Mock Object child1;
+ @Mock Object child2;
+
+ @Mock TreePath path;
+ @Mock TreeModelListener tListener;
+
+ @Mock Object source;
+ int[] childIndices = new int[]{};
+ Object[] children = new Object[]{};
+
+ Object[] pathList = new Object[]{path};
+
+ @Before
+ public void setUp() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ model = new DummyTreeTableModel(root);
+ }
+
+
+ @Test
+ public void testAbstractTreeTableModel() {
+ assertNotNull(model);
+ }
+
+ @Test
+ public void testGetRoot() {
+ assertEquals(root, model.getRoot());
+ }
+
+ @Test
+ public void testIsLeaf() {
+ assertTrue(model.isLeaf(root));
+ }
+
+ @Test
+ public void testValueForPathChanged() {
+ model.valueForPathChanged(path, child1);
+ }
+
+ @Test
+ public void testGetIndexOfChild() {
+ assertEquals(-1, model.getIndexOfChild(root, child1));
+ }
+
+ @Test
+ public void testAddTreeModelListener() {
+ model.addTreeModelListener(tListener);
+ assertEquals(1, model.listenerList.getListenerCount());
+ model.removeTreeModelListener(tListener);
+ assertEquals(0, model.listenerList.getListenerCount());
+ }
+
+
+ @Test
+ public void testFireTreeNodesChanged() {
+ model.addTreeModelListener(tListener);
+ model.fireTreeNodesChanged(source, pathList, childIndices,
children);
+
+ verify(tListener,
times(1)).treeNodesChanged(any(TreeModelEvent.class));
+ }
+
+ @Test
+ public void testFireTreeNodesInserted() {
+ model.addTreeModelListener(tListener);
+ model.fireTreeNodesInserted(source, pathList, childIndices,
children);
+
+ verify(tListener,
times(1)).treeNodesInserted(any(TreeModelEvent.class));
+ }
+
+ @Test
+ public void testFireTreeNodesRemoved() {
+ model.addTreeModelListener(tListener);
+ model.fireTreeNodesRemoved(source, pathList, childIndices,
children);
+
+ verify(tListener,
times(1)).treeNodesRemoved(any(TreeModelEvent.class));
+ }
+
+ @Test
+ public void testFireTreeStructureChanged() {
+ model.addTreeModelListener(tListener);
+ model.fireTreeStructureChanged(source, pathList, childIndices,
children);
+
+ verify(tListener,
times(1)).treeStructureChanged(any(TreeModelEvent.class));
+ }
+
+ @Test
+ public void testGetColumnClass() {
+ assertEquals(Object.class, model.getColumnClass(0));
+ }
+
+ @Test
+ public void testIsCellEditable() {
+ assertFalse(model.isCellEditable(root, 0));
+ }
+
+ @Test
+ public void testSetValueAt() {
+ Object aValue = null;
+ model.setValueAt(aValue, root, 0);
+ }
+
+ private static final class DummyTreeTableModel extends
AbstractTreeTableModel {
+
+ public DummyTreeTableModel(Object root) {
+ super(root);
+ // TODO Auto-generated constructor stub
+ }
+
+ @Override
+ public int getColumnCount() {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ @Override
+ public String getColumnName(int column) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public Object getValueAt(Object node, int column) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public Object getChild(Object arg0, int arg1) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public int getChildCount(Object arg0) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ }
+
+}
Added:
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/DropDownMenuButtonTest.java
===================================================================
---
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/DropDownMenuButtonTest.java
(rev 0)
+++
core3/api/trunk/swing-util-api/src/test/java/org/cytoscape/util/swing/DropDownMenuButtonTest.java
2012-04-24 01:22:55 UTC (rev 28960)
@@ -0,0 +1,38 @@
+package org.cytoscape.util.swing;
+
+import static org.junit.Assert.assertNotNull;
+import static org.mockito.Mockito.verify;
+
+import java.awt.Graphics2D;
+
+import javax.swing.AbstractAction;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+
+public class DropDownMenuButtonTest {
+ DropDownMenuButton button;
+ @Mock private AbstractAction action;
+ @Mock private Graphics2D g;
+
+ @Before
+ public void setUp() throws Exception {
+ MockitoAnnotations.initMocks(this);
+
+ button = new DropDownMenuButton(action);
+ }
+
+
+ @Test
+ public void testDropDownMenuButton() {
+ assertNotNull(action);
+ }
+
+ @Test
+ public void testPaintComponentGraphics() {
+ button.repaint();
+ }
+
+}
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.