diff options
author | Jim Hahn <jrh3@att.com> | 2018-07-12 17:47:09 -0400 |
---|---|---|
committer | Jim Hahn <jrh3@att.com> | 2018-07-16 09:54:28 -0400 |
commit | 1480379b0e9907c0d41e8a782468c30f0ee83196 (patch) | |
tree | fbac13a23903776225b5ffe749e56007afd82263 /feature-distributed-locking/src/test/java | |
parent | b65c92040c5acbf9013eccc5c9ce80dbd6587458 (diff) |
Distinguish lock from refresh
This is the first step of separating the lock "refresh" operation
from the original "lock" operation. This step entails adding the
refresh() method to both the default and the feature-distriubted
locking mechanisms.
Change method call, in junit test, from lock to refresh.
Change branch name in git review.
Change-Id: I506de7a96cb3ee786839aca04ad67cdd7378832c
Issue-ID: POLICY-872
Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'feature-distributed-locking/src/test/java')
-rw-r--r-- | feature-distributed-locking/src/test/java/org/onap/policy/distributed/locking/TargetLockTest.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/feature-distributed-locking/src/test/java/org/onap/policy/distributed/locking/TargetLockTest.java b/feature-distributed-locking/src/test/java/org/onap/policy/distributed/locking/TargetLockTest.java index c1b46d67..6e33f224 100644 --- a/feature-distributed-locking/src/test/java/org/onap/policy/distributed/locking/TargetLockTest.java +++ b/feature-distributed-locking/src/test/java/org/onap/policy/distributed/locking/TargetLockTest.java @@ -119,6 +119,32 @@ public class TargetLockTest { assertEquals(OperResult.OPER_DENIED, distLockFeat.beforeLock("resource1", "owner2", MAX_AGE_SEC)); } + + @Test + public void testUpdateLock() throws InterruptedException, ExecutionException { + // not locked yet - refresh should fail + assertEquals(OperResult.OPER_DENIED, distLockFeat.beforeRefresh("resource1", "owner1", MAX_AGE_SEC)); + + // now lock it + assertEquals(OperResult.OPER_ACCEPTED, distLockFeat.beforeLock("resource1", "owner1", MAX_AGE_SEC)); + + // refresh should work now + assertEquals(OperResult.OPER_ACCEPTED, distLockFeat.beforeRefresh("resource1", "owner1", MAX_AGE_SEC)); + + // expire the lock + try (PreparedStatement updateStatement = conn.prepareStatement("UPDATE pooling.locks SET expirationTime = timestampadd(second, -1, now()) WHERE resourceId = ?");) + { + updateStatement.setString(1, "resource1"); + updateStatement.executeUpdate(); + + } catch (SQLException e) { + logger.error("Error in TargetLockTest.testGrabLockSuccess()", e); + throw new RuntimeException(e); + } + + // refresh should fail now + assertEquals(OperResult.OPER_DENIED, distLockFeat.beforeRefresh("resource1", "owner1", MAX_AGE_SEC)); + } @Test |