Author: ruschein
Date: 2011-07-27 10:58:30 -0700 (Wed, 27 Jul 2011)
New Revision: 26288
Added:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/SelectionEdit.java
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnEdit.java
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/DeleteTableEdit.java
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/AbstractSelectTask.java
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTask.java
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskFactory.java
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTask.java
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTaskFactory.java
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskTest.java
Log:
Added undo/redo for deletion of tables, deselecting of all edges and copying of
a value in a CyTable to an entire column.
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/AbstractSelectTask.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/AbstractSelectTask.java
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/AbstractSelectTask.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -1,7 +1,7 @@
/*
File: AbstractSelectTask.java
- Copyright (c) 2006, 2010, The Cytoscape Consortium (www.cytoscape.org)
+ Copyright (c) 2006, 2010-2011, The Cytoscape Consortium (www.cytoscape.org)
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
@@ -26,7 +26,7 @@
You should have received a copy of the GNU Lesser General Public License
along with this library; if not, write to the Free Software Foundation,
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
+*/
package org.cytoscape.task.internal.select;
@@ -38,9 +38,7 @@
public abstract class AbstractSelectTask extends AbstractNetworkTask {
-
- private final CyNetworkViewManager networkViewManager;
-
+ protected final CyNetworkViewManager networkViewManager;
protected final SelectUtils selectUtils;
protected final CyEventHelper eventHelper;
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTask.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTask.java
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTask.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -1,7 +1,7 @@
/*
File: DeselectAllEdgesTask.java
- Copyright (c) 2006, 2010, The Cytoscape Consortium (www.cytoscape.org)
+ Copyright (c) 2006, 2010-2011, The Cytoscape Consortium (www.cytoscape.org)
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
@@ -26,23 +26,36 @@
You should have received a copy of the GNU Lesser General Public License
along with this library; if not, write to the Free Software Foundation,
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
+*/
package org.cytoscape.task.internal.select;
import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyNetwork;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.work.TaskMonitor;
-import org.cytoscape.view.model.CyNetworkViewManager;
+import org.cytoscape.work.undo.UndoSupport;
public class DeselectAllEdgesTask extends AbstractSelectTask {
- public DeselectAllEdgesTask(final CyNetwork net, final
CyNetworkViewManager networkViewManager, final CyEventHelper eventHelper) {
+ private final UndoSupport undoSupport;
+
+ public DeselectAllEdgesTask(final UndoSupport undoSupport, final
CyNetwork net,
+ final CyNetworkViewManager
networkViewManager,
+ final CyEventHelper eventHelper)
+ {
super(net, networkViewManager, eventHelper);
+ this.undoSupport = undoSupport;
}
public void run(TaskMonitor tm) {
- selectUtils.setSelectedEdges( network.getEdgeList(), false);
+ final CyNetworkView view =
networkViewManager.getNetworkView(network.getSUID());
+ undoSupport.getUndoableEditSupport().postEdit(
+ new SelectionEdit(eventHelper, "Deselect All Edges",
network, view,
+
SelectionEdit.SelectionFilter.EDGES_ONLY));
+
+ selectUtils.setSelectedEdges(network.getEdgeList(), false);
updateView();
}
}
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskFactory.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskFactory.java
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskFactory.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -1,7 +1,7 @@
/*
File: DeselectAllEdgesTaskFactory.java
- Copyright (c) 2006, 2010, The Cytoscape Consortium (www.cytoscape.org)
+ Copyright (c) 2006, 2010-2011, The Cytoscape Consortium (www.cytoscape.org)
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
@@ -26,27 +26,35 @@
You should have received a copy of the GNU Lesser General Public License
along with this library; if not, write to the Free Software Foundation,
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
+*/
package org.cytoscape.task.internal.select;
+import org.cytoscape.task.AbstractNetworkTaskFactory;
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.work.TaskFactory;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.event.CyEventHelper;
-import org.cytoscape.task.AbstractNetworkTaskFactory;
+import org.cytoscape.work.undo.UndoSupport;
public class DeselectAllEdgesTaskFactory extends AbstractNetworkTaskFactory {
+ private final UndoSupport undoSupport;
private CyNetworkViewManager networkViewManager;
private final CyEventHelper eventHelper;
- public DeselectAllEdgesTaskFactory(final CyNetworkViewManager
networkViewManager, final CyEventHelper eventHelper) {
+ public DeselectAllEdgesTaskFactory(final UndoSupport undoSupport,
+ final CyNetworkViewManager
networkViewManager,
+ final CyEventHelper eventHelper)
+ {
+ this.undoSupport = undoSupport;
this.networkViewManager = networkViewManager;
- this.eventHelper = eventHelper;
+ this.eventHelper = eventHelper;
}
public TaskIterator getTaskIterator() {
- return new TaskIterator(new DeselectAllEdgesTask(network,
networkViewManager, eventHelper));
+ return new TaskIterator(
+ new DeselectAllEdgesTask(undoSupport, network,
networkViewManager,
+ eventHelper));
}
}
Copied:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/SelectionEdit.java
(from rev 26241,
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/RenameColumnEdit.java)
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/SelectionEdit.java
(rev 0)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/SelectionEdit.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -0,0 +1,84 @@
+package org.cytoscape.task.internal.select;
+
+
+import java.util.Collection;
+
+import org.cytoscape.event.CyEventHelper;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyRow;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.util.swing.CyAbstractEdit;
+
+
+/** An undoable edit that will undo and redo selection of nodes and edges. */
+final class SelectionEdit extends CyAbstractEdit {
+ public static enum SelectionFilter {
+ NODES_ONLY, EDGES_ONLY, NODES_AND_EDGES;
+ }
+
+ private final CyEventHelper eventHelper;
+ private final CyNetwork network;
+ private final CyNetworkView view;
+ private final SelectionFilter filter;
+ private Collection<CyRow> nodeRows;
+ private Collection<CyRow> edgeRows;
+
+ SelectionEdit(final CyEventHelper eventHelper, final String description,
+ final CyNetwork network, final CyNetworkView view,
+ final SelectionFilter filter)
+ {
+ super(description);
+
+ this.eventHelper = eventHelper;
+ this.network = network;
+ this.view = view;
+ this.filter = filter;
+
+ saveSelectionState();
+ }
+
+ public void redo() {
+ super.redo();
+
+ saveSelectionState();
+ restoreSelectionState();
+
+ eventHelper.flushPayloadEvents();
+ view.updateView();
+ }
+
+ public void undo() {
+ super.undo();
+
+ restoreSelectionState();
+ saveSelectionState();
+
+ eventHelper.flushPayloadEvents();
+ view.updateView();
+ }
+
+ private void restoreSelectionState() {
+ if (filter == SelectionFilter.NODES_ONLY || filter ==
SelectionFilter.NODES_AND_EDGES) {
+ for (final CyRow row : nodeRows)
+ row.set(CyNetwork.SELECTED,
Boolean.valueOf(true));
+ }
+
+ if (filter == SelectionFilter.EDGES_ONLY || filter ==
SelectionFilter.NODES_AND_EDGES) {
+ for (final CyRow row : edgeRows)
+ row.set(CyNetwork.SELECTED,
Boolean.valueOf(true));
+ }
+ }
+
+ private void saveSelectionState() {
+ if (filter == SelectionFilter.NODES_ONLY || filter ==
SelectionFilter.NODES_AND_EDGES) {
+ final CyTable nodeTable = network.getDefaultNodeTable();
+ nodeRows =
nodeTable.getMatchingRows(CyNetwork.SELECTED, Boolean.valueOf(true));
+ }
+
+ if (filter == SelectionFilter.EDGES_ONLY || filter ==
SelectionFilter.NODES_AND_EDGES) {
+ final CyTable edgeTable = network.getDefaultEdgeTable();
+ edgeRows =
edgeTable.getMatchingRows(CyNetwork.SELECTED, Boolean.valueOf(true));
+ }
+ }
+}
Copied:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnEdit.java
(from rev 26244,
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/DeleteColumnEdit.java)
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnEdit.java
(rev 0)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnEdit.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -0,0 +1,47 @@
+package org.cytoscape.task.internal.table;
+
+
+import java.util.Collection;
+
+import org.cytoscape.model.CyColumn;
+import org.cytoscape.model.CyRow;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.util.swing.CyAbstractEdit;
+
+
+/** An undoable edit that will undo and redo the copying of a value to an
entire column. */
+final class CopyValueToEntireColumnEdit extends CyAbstractEdit {
+ private final CyTable table;
+ private final String columnName;
+ private final Class<?> columnType;
+ private final Object value;
+ private SaveColumn savedColumn;
+
+ CopyValueToEntireColumnEdit(final CyColumn column, final Object value) {
+ super("Copy Value to Entire Column");
+
+ this.table = column.getTable();
+ this.columnName = column.getName();
+ this.columnType = column.getType();
+ this.value = value;
+ this.savedColumn = new SaveColumn(table, columnName);
+
+ }
+
+ public void redo() {
+ super.redo();
+
+ savedColumn = new SaveColumn(table, columnName);
+
+ final Collection<CyRow> rows = table.getAllRows();
+ for (final CyRow row : rows)
+ row.set(columnName, value);
+ }
+
+ public void undo() {
+ super.undo();
+
+ savedColumn.restoreColumn(table, columnName);
+ savedColumn = null;
+ }
+}
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTask.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTask.java
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTask.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -1,5 +1,5 @@
/*
- Copyright (c) 2010, The Cytoscape Consortium (www.cytoscape.org)
+ Copyright (c) 2010-2011, The Cytoscape Consortium (www.cytoscape.org)
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
@@ -35,11 +35,17 @@
import org.cytoscape.model.CyRow;
import org.cytoscape.task.AbstractTableCellTask;
import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.undo.UndoSupport;
final class CopyValueToEntireColumnTask extends AbstractTableCellTask {
- CopyValueToEntireColumnTask(final CyColumn column, final Object
primaryKeyValue) {
+ private final UndoSupport undoSupport;
+
+ CopyValueToEntireColumnTask(final UndoSupport undoSupport, final
CyColumn column,
+ final Object primaryKeyValue)
+ {
super(column, primaryKeyValue);
+ this.undoSupport = undoSupport;
}
@Override
@@ -50,6 +56,9 @@
final String columnName = column.getName();
final Object sourceValue = sourceRow.getRaw(columnName);
+ undoSupport.getUndoableEditSupport().postEdit(
+ new CopyValueToEntireColumnEdit(column, sourceValue));
+
final List<CyRow> rows = column.getTable().getAllRows();
final int total = rows.size() - 1;
int count = 0;
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTaskFactory.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTaskFactory.java
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/CopyValueToEntireColumnTaskFactory.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -1,5 +1,5 @@
/*
- Copyright (c) 2010, The Cytoscape Consortium (www.cytoscape.org)
+ Copyright (c) 2010-2011, The Cytoscape Consortium (www.cytoscape.org)
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
@@ -31,15 +31,23 @@
import org.cytoscape.model.CyColumn;
import org.cytoscape.task.AbstractTableCellTaskFactory;
import org.cytoscape.work.TaskIterator;
+import org.cytoscape.work.undo.UndoSupport;
final class CopyValueToEntireColumnTaskFactory extends
AbstractTableCellTaskFactory {
+ private final UndoSupport undoSupport;
+
+ public CopyValueToEntireColumnTaskFactory(final UndoSupport
undoSupport) {
+ this.undoSupport = undoSupport;
+ }
+
@Override
public TaskIterator getTaskIterator() {
if (column == null)
throw new IllegalStateException("\"column\" was not
set!");
if (primaryKeyValue == null)
throw new IllegalStateException("\"primaryKeyValue\"
was not set!");
- return new TaskIterator(new CopyValueToEntireColumnTask(column,
primaryKeyValue));
+ return new TaskIterator(new
CopyValueToEntireColumnTask(undoSupport, column,
+
primaryKeyValue));
}
}
\ No newline at end of file
Copied:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/DeleteTableEdit.java
(from rev 26237,
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/RenameColumnEdit.java)
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/DeleteTableEdit.java
(rev 0)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/table/DeleteTableEdit.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -0,0 +1,51 @@
+package org.cytoscape.task.internal.table;
+
+
+import org.cytoscape.model.CyTable;
+import org.cytoscape.model.CyTableFactory;
+import org.cytoscape.model.CyTableManager;
+import org.cytoscape.util.swing.CyAbstractEdit;
+
+
+/** An undoable edit that will undo and redo the deletion of a table. */
+final class DeleteTableEdit extends CyAbstractEdit {
+ private CyTable table;
+ private final CyTableManager tableManager;
+ private final CyTableFactory tableFactory;
+
+ DeleteTableEdit(final CyTable table, final CyTableManager tableManager,
+ final CyTableFactory tableFactory)
+ {
+ super("Delete Table");
+
+ this.table = tableFactory.createTable(table.getTitle(),
table.getPrimaryKey().getName(),
+
table.getPrimaryKey().getType(),
+ /* public = */ false, /*
isMutable = */ true);
+ this.table.swap(table);
+ this.tableManager = tableManager;
+ this.tableFactory = tableFactory;
+ }
+
+ public void redo() {
+ super.redo();
+
+ final CyTable newTable =
+ tableFactory.createTable(table.getTitle(),
table.getPrimaryKey().getName(),
+
table.getPrimaryKey().getType(), /* public = */ false,
+ /* isMutable = */ true);
+ table.swap(newTable);
+ tableManager.deleteTable(table.getSUID());
+ table = newTable;
+ }
+
+ public void undo() {
+ super.undo();
+
+ final CyTable newTable =
+ tableFactory.createTable(table.getTitle(),
table.getPrimaryKey().getName(),
+
table.getPrimaryKey().getType(), /* public = */ false,
+ /* isMutable = */ true);
+ table.swap(newTable);
+ table = newTable;
+ }
+}
Modified:
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
===================================================================
---
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2011-07-27 17:58:30 UTC (rev 26288)
@@ -130,6 +130,7 @@
<bean id="deselectAllEdgesTaskFactory"
class="org.cytoscape.task.internal.select.DeselectAllEdgesTaskFactory">
+ <constructor-arg ref="undoSupportServiceRef" />
<constructor-arg ref="cyNetworkViewManagerServiceRef" />
<constructor-arg ref="cyEventHelperRef" />
</bean>
@@ -351,6 +352,7 @@
<bean id="copyValueToEntireColumnTaskFactory"
class="org.cytoscape.task.internal.table.CopyValueToEntireColumnTaskFactory">
+ <constructor-arg ref="undoSupportServiceRef" />
</bean>
<bean id="deleteTableTaskFactory"
Modified:
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
===================================================================
---
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -24,104 +24,116 @@
You should have received a copy of the GNU Lesser General Public License
along with this library; if not, write to the Free Software Foundation,
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
+*/
package org.cytoscape.task.internal.select;
+
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
+
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyNetworkManager;
+import org.cytoscape.model.CyTable;
import org.cytoscape.task.NetworkTaskFactory;
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.work.Task;
import org.cytoscape.work.TaskIterator;
+import org.cytoscape.work.undo.UndoSupport;
+
import org.junit.Before;
import org.junit.Test;
+
public class AllFactoryTest {
- CyNetworkManager netmgr;
- CyNetworkViewManager networkViewManager;
- CyNetwork net;
- CyEventHelper eventHelper;
+ CyNetworkManager netmgr;
+ CyNetworkViewManager networkViewManager;
+ CyNetwork net;
+ CyTable edgeTable;
+ CyEventHelper eventHelper;
+ UndoSupport undoSupport;
- @Before
- public void setUp() throws Exception {
- net = mock(CyNetwork.class);
- netmgr = mock(CyNetworkManager.class);
- networkViewManager = mock(CyNetworkViewManager.class);
- eventHelper = mock(CyEventHelper.class);
- }
+ @Before
+ public void setUp() throws Exception {
+ net = mock(CyNetwork.class);
+ edgeTable = mock(CyTable.class);
+ when(net.getDefaultEdgeTable()).thenReturn(edgeTable);
+ netmgr = mock(CyNetworkManager.class);
+ networkViewManager = mock(CyNetworkViewManager.class);
+ eventHelper = mock(CyEventHelper.class);
+ UndoSupport undoSupport = mock(UndoSupport.class);
+ }
- @Test
- public void testDeselectAllEdgesTaskFactory() {
- executeTest(new DeselectAllEdgesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testDeselectAllEdgesTaskFactory() {
+ executeTest(new DeselectAllEdgesTaskFactory(undoSupport,
networkViewManager, eventHelper));
+ }
- @Test
- public void testDeselectAllNodesTaskFactory() {
- executeTest(new DeselectAllNodesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testDeselectAllNodesTaskFactory() {
+ executeTest(new DeselectAllNodesTaskFactory(networkViewManager,
eventHelper));
+ }
- @Test
- public void testDeselectAllTaskFactory() {
- executeTest(new DeselectAllTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testDeselectAllTaskFactory() {
+ executeTest(new DeselectAllTaskFactory(networkViewManager,
eventHelper));
+ }
- @Test
- public void testInvertSelectedEdgesTaskFactory() {
- executeTest(new InvertSelectedEdgesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testInvertSelectedEdgesTaskFactory() {
+ executeTest(new
InvertSelectedEdgesTaskFactory(networkViewManager, eventHelper));
+ }
- @Test
- public void testInvertSelectedNodesTaskFactory() {
- final CyEventHelper eventHelper = mock(CyEventHelper.class);
- executeTest(new InvertSelectedNodesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testInvertSelectedNodesTaskFactory() {
+ final CyEventHelper eventHelper = mock(CyEventHelper.class);
+ executeTest(new
InvertSelectedNodesTaskFactory(networkViewManager, eventHelper));
+ }
- @Test
- public void testSelectAdjacentEdgesTaskFactory() {
- executeTest(new SelectAdjacentEdgesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testSelectAdjacentEdgesTaskFactory() {
+ executeTest(new
SelectAdjacentEdgesTaskFactory(networkViewManager, eventHelper));
+ }
- @Test
- public void testSelectAllEdgesTaskFactory() {
- executeTest(new SelectAllEdgesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testSelectAllEdgesTaskFactory() {
+ executeTest(new SelectAllEdgesTaskFactory(networkViewManager,
eventHelper));
+ }
- @Test
- public void testSelectAllNodesTaskFactory() {
- executeTest(new SelectAllNodesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testSelectAllNodesTaskFactory() {
+ executeTest(new SelectAllNodesTaskFactory(networkViewManager,
eventHelper));
+ }
- @Test
- public void testSelectAllTaskFactory() {
- executeTest(new SelectAllTaskFactory(networkViewManager, eventHelper));
- }
+ @Test
+ public void testSelectAllTaskFactory() {
+ executeTest(new SelectAllTaskFactory(networkViewManager,
eventHelper));
+ }
- @Test
- public void testSelectConnectedNodesTaskFactory() {
- executeTest(new SelectConnectedNodesTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testSelectConnectedNodesTaskFactory() {
+ executeTest(new
SelectConnectedNodesTaskFactory(networkViewManager, eventHelper));
+ }
- @Test
- public void testSelectFirstNeighborsTaskFactory() {
- executeTest(new SelectFirstNeighborsTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testSelectFirstNeighborsTaskFactory() {
+ executeTest(new
SelectFirstNeighborsTaskFactory(networkViewManager, eventHelper));
+ }
- @Test
- public void testSelectFromFileListTaskFactory() {
- executeTest(new SelectFromFileListTaskFactory(networkViewManager,
eventHelper));
- }
+ @Test
+ public void testSelectFromFileListTaskFactory() {
+ executeTest(new
SelectFromFileListTaskFactory(networkViewManager, eventHelper));
+ }
- private void executeTest(NetworkTaskFactory ntf) {
- ntf.setNetwork(net);
- TaskIterator ti = ntf.getTaskIterator();
- assertNotNull(ti);
- assertTrue(ti.hasNext());
- Task t = ti.next();
- assertNotNull(t);
- }
+ private void executeTest(NetworkTaskFactory ntf) {
+ ntf.setNetwork(net);
+ TaskIterator ti = ntf.getTaskIterator();
+ assertNotNull(ti);
+ assertTrue(ti.hasNext());
+ Task t = ti.next();
+ assertNotNull(t);
+ }
}
Modified:
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskTest.java
===================================================================
---
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskTest.java
2011-07-27 17:47:30 UTC (rev 26287)
+++
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/DeselectAllEdgesTaskTest.java
2011-07-27 17:58:30 UTC (rev 26288)
@@ -1,13 +1,6 @@
/*
- Copyright (c) 2010, The Cytoscape Consortium (www.cytoscape.org)
+ Copyright (c) 2010-2011, The Cytoscape Consortium (www.cytoscape.org)
- The Cytoscape Consortium is:
- - Institute for Systems Biology
- - University of California San Diego
- - Memorial Sloan-Kettering Cancer Center
- - Institut Pasteur
- - Agilent Technologies
-
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
by the Free Software Foundation; either version 2.1 of the License, or
@@ -31,32 +24,45 @@
You should have received a copy of the GNU Lesser General Public License
along with this library; if not, write to the Free Software Foundation,
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
-
+*/
package org.cytoscape.task.internal.select;
+
+import javax.swing.undo.UndoableEditSupport;
+
+import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+import org.cytoscape.model.CyTable;
import org.cytoscape.work.Task;
+import org.cytoscape.work.undo.UndoSupport;
+
import org.junit.Before;
import org.junit.Test;
+
public class DeselectAllEdgesTaskTest extends AbstractSelectTaskTester {
+ @Before
+ public void setUp() throws Exception {
+ super.setUp();
+ }
- @Before
- public void setUp() throws Exception {
- super.setUp();
- }
+ @Test
+ public void testRun() throws Exception {
+ final CyTable edgeTable = mock(CyTable.class);
+ when(net.getDefaultEdgeTable()).thenReturn(edgeTable);
+ UndoableEditSupport undoableEditSupport =
mock(UndoableEditSupport.class);
+ UndoSupport undoSupport = mock(UndoSupport.class);
+
when(undoSupport.getUndoableEditSupport()).thenReturn(undoableEditSupport);
- @Test
- public void testRun() throws Exception {
- // run the task
- Task t = new DeselectAllEdgesTask(net, networkViewManager, eventHelper);
- t.run(tm);
+ // run the task
+ Task t = new DeselectAllEdgesTask(undoSupport, net,
networkViewManager, eventHelper);
+ t.run(tm);
- // check that the expected rows were set
- verify(r1, times(1)).set("selected", false);
- verify(r2, times(1)).set("selected", false);
- }
+ // check that the expected rows were set
+ verify(r1, times(1)).set("selected", false);
+ verify(r2, times(1)).set("selected", false);
+ }
}
--
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.