Repository: jclouds Updated Branches: refs/heads/master e799a7409 -> ea6855424
NodePredicates gained static predicate SUSPENDED Replaced hard-coded Strings in toString methods of static predicates with their enum.toString counterparts Added test 'testNodeRunningFailsOnSuspended' Revert "Added test 'testNodeRunningFailsOnSuspended'" This reverts commit 2a543bfe20540bb4f10ef4f86e845a63bdbe90e3. Removed test 'testNodeRunningFailsOnSuspended'. Added test 'testNodeSuspendedReturnsTrueWhenSuspended'. Renamed ' Revert "Renamed '" This reverts commit 061e9292a812066562ab47ba5eea15337fc13c3d. Renamed 'AtomicNodeSuspended.nodeRunning' to 'AtomicNodeSuspended.nodeSuspended'.\nWhere applicable combined all calls to 'replay(Object...)' instead of the old 'replay(node);replay(computeService);' Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/ea685542 Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/ea685542 Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/ea685542 Branch: refs/heads/master Commit: ea68554244bd90af41fe87464b321e4692c627dc Parents: e799a74 Author: Christopher Dancy <[email protected]> Authored: Thu Jun 12 11:33:49 2014 -0400 Committer: Everett Toews <[email protected]> Committed: Mon Jun 16 16:58:35 2014 -0500 ---------------------------------------------------------------------- .../compute/predicates/NodePredicates.java | 19 ++++++++++++++++-- .../predicates/AtomicNodePredicatesTest.java | 21 ++++++++++++++------ 2 files changed, 32 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds/blob/ea685542/compute/src/main/java/org/jclouds/compute/predicates/NodePredicates.java ---------------------------------------------------------------------- diff --git a/compute/src/main/java/org/jclouds/compute/predicates/NodePredicates.java b/compute/src/main/java/org/jclouds/compute/predicates/NodePredicates.java index 0bc54aa..65a4d72 100644 --- a/compute/src/main/java/org/jclouds/compute/predicates/NodePredicates.java +++ b/compute/src/main/java/org/jclouds/compute/predicates/NodePredicates.java @@ -252,7 +252,7 @@ public class NodePredicates { @Override public String toString() { - return "RUNNING"; + return Status.RUNNING.toString(); } }; @@ -267,7 +267,22 @@ public class NodePredicates { @Override public String toString() { - return "TERMINATED"; + return Status.TERMINATED.toString(); + } + }; + + /** + * Match nodes with State == SUSPENDED + */ + public static final Predicate<NodeMetadata> SUSPENDED = new Predicate<NodeMetadata>() { + @Override + public boolean apply(NodeMetadata nodeMetadata) { + return nodeMetadata.getStatus() == Status.SUSPENDED; + } + + @Override + public String toString() { + return Status.SUSPENDED.toString(); } }; http://git-wip-us.apache.org/repos/asf/jclouds/blob/ea685542/compute/src/test/java/org/jclouds/compute/predicates/AtomicNodePredicatesTest.java ---------------------------------------------------------------------- diff --git a/compute/src/test/java/org/jclouds/compute/predicates/AtomicNodePredicatesTest.java b/compute/src/test/java/org/jclouds/compute/predicates/AtomicNodePredicatesTest.java index cd21be4..b5c10c9 100644 --- a/compute/src/test/java/org/jclouds/compute/predicates/AtomicNodePredicatesTest.java +++ b/compute/src/test/java/org/jclouds/compute/predicates/AtomicNodePredicatesTest.java @@ -133,21 +133,31 @@ public class AtomicNodePredicatesTest { public void testNodeRunningReturnsTrueWhenRunning() { expect(node.getStatus()).andReturn(Status.RUNNING).atLeastOnce(); expect(node.getBackendStatus()).andReturn(null).atLeastOnce(); - replay(node); - replay(computeService); + replay(node, computeService); AtomicNodeRunning nodeRunning = new AtomicNodeRunning(computeService); AtomicReference<NodeMetadata> reference = Atomics.newReference(node); Assert.assertTrue(nodeRunning.apply(reference)); Assert.assertEquals(reference.get(), node); } + + @Test + public void testNodeSuspendedReturnsTrueWhenSuspended() { + expect(node.getStatus()).andReturn(Status.SUSPENDED).atLeastOnce(); + expect(node.getBackendStatus()).andReturn(null).atLeastOnce(); + replay(node, computeService); + + AtomicNodeSuspended nodeSuspended = new AtomicNodeSuspended(computeService); + AtomicReference<NodeMetadata> reference = Atomics.newReference(node); + Assert.assertTrue(nodeSuspended.apply(reference)); + Assert.assertEquals(reference.get(), node); + } @Test(expectedExceptions = IllegalStateException.class) public void testNodeRunningFailsOnTerminated() { expect(node.getStatus()).andReturn(Status.TERMINATED).atLeastOnce(); expect(node.getBackendStatus()).andReturn(null).atLeastOnce(); - replay(node); - replay(computeService); + replay(node, computeService); AtomicNodeRunning nodeRunning = new AtomicNodeRunning(computeService); AtomicReference<NodeMetadata> reference = Atomics.newReference(node); @@ -159,8 +169,7 @@ public class AtomicNodePredicatesTest { public void testNodeRunningFailsOnError() { expect(node.getStatus()).andReturn(Status.ERROR).atLeastOnce(); expect(node.getBackendStatus()).andReturn(null).atLeastOnce(); - replay(node); - replay(computeService); + replay(node, computeService); AtomicNodeRunning nodeRunning = new AtomicNodeRunning(computeService); AtomicReference<NodeMetadata> reference = Atomics.newReference(node);
