X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Futils%2FTransactionRateLimiterTest.java;h=fef8206885ebb07f842975acffd7a9176e104a43;hb=f83b2d36fdd7e953ba72492ffb684cd112aa04a6;hp=e57036842d78986ad00764bca85b6bfd0ebd718b;hpb=713762ab12bb2d37a44679c1d6a93b08750a50a6;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/TransactionRateLimiterTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/TransactionRateLimiterTest.java index e57036842d..fef8206885 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/TransactionRateLimiterTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/TransactionRateLimiterTest.java @@ -15,6 +15,7 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; + import com.codahale.metrics.Snapshot; import com.codahale.metrics.Timer; import java.util.concurrent.TimeUnit; @@ -31,7 +32,7 @@ import org.opendaylight.controller.cluster.datastore.DatastoreContext; public class TransactionRateLimiterTest { @Mock - public ActorContext actorContext; + public ActorUtils actorUtils; @Mock public DatastoreContext datastoreContext; @@ -46,25 +47,25 @@ public class TransactionRateLimiterTest { private Snapshot commitSnapshot; @Before - public void setUp(){ + public void setUp() { MockitoAnnotations.initMocks(this); - doReturn(datastoreContext).when(actorContext).getDatastoreContext(); + doReturn(datastoreContext).when(actorUtils).getDatastoreContext(); doReturn(30).when(datastoreContext).getShardTransactionCommitTimeoutInSeconds(); doReturn(100L).when(datastoreContext).getTransactionCreationInitialRateLimit(); - doReturn(commitTimer).when(actorContext).getOperationTimer("commit"); + doReturn(commitTimer).when(actorUtils).getOperationTimer("commit"); doReturn(commitTimerContext).when(commitTimer).time(); doReturn(commitSnapshot).when(commitTimer).getSnapshot(); } @Test - public void testAcquireRateLimitChanged(){ - for(int i=1;i<11;i++){ + public void testAcquireRateLimitChanged() { + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(i) * 1D).when(commitSnapshot).getValue(i * 0.1); } - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); rateLimiter.acquire(); @@ -75,9 +76,9 @@ public class TransactionRateLimiterTest { @Test - public void testAcquirePercentileValueZero(){ + public void testAcquirePercentileValueZero() { - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(i) * 1D).when(commitSnapshot).getValue(i * 0.1); @@ -85,7 +86,7 @@ public class TransactionRateLimiterTest { doReturn(TimeUnit.MILLISECONDS.toNanos(0) * 1D).when(commitSnapshot).getValue(0.1); - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); rateLimiter.acquire(); @@ -95,9 +96,9 @@ public class TransactionRateLimiterTest { } @Test - public void testAcquireOnePercentileValueVeryHigh(){ + public void testAcquireOnePercentileValueVeryHigh() { - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(i) * 1D).when(commitSnapshot).getValue(i * 0.1); @@ -106,7 +107,7 @@ public class TransactionRateLimiterTest { // ten seconds doReturn(TimeUnit.MILLISECONDS.toNanos(10000) * 1D).when(commitSnapshot).getValue(1.0); - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); rateLimiter.acquire(); @@ -116,15 +117,15 @@ public class TransactionRateLimiterTest { } @Test - public void testAcquireWithAllPercentileValueVeryHigh(){ + public void testAcquireWithAllPercentileValueVeryHigh() { - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(10000) * 1D).when(commitSnapshot).getValue(i * 0.1); } - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); rateLimiter.acquire(); @@ -135,9 +136,9 @@ public class TransactionRateLimiterTest { } @Test - public void testAcquireWithRealPercentileValues(){ + public void testAcquireWithRealPercentileValues() { - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(8) * 1D).when(commitSnapshot).getValue(i * 0.1); @@ -147,7 +148,7 @@ public class TransactionRateLimiterTest { doReturn(TimeUnit.MILLISECONDS.toNanos(100) * 1D).when(commitSnapshot).getValue(0.9); doReturn(TimeUnit.MILLISECONDS.toNanos(200) * 1D).when(commitSnapshot).getValue(1.0); - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); rateLimiter.acquire(); @@ -156,11 +157,9 @@ public class TransactionRateLimiterTest { assertEquals(51, rateLimiter.getPollOnCount()); } - - @Test - public void testAcquireGetRateLimitFromOtherDataStores(){ - for(int i=1;i<11;i++){ + public void testAcquireGetRateLimitFromOtherDataStores() { + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(0.0D).when(commitSnapshot).getValue(i * 0.1); @@ -170,11 +169,11 @@ public class TransactionRateLimiterTest { Timer.Context operationalCommitTimerContext = mock(Timer.Context.class); Snapshot operationalCommitSnapshot = mock(Snapshot.class); - doReturn(operationalCommitTimer).when(actorContext).getOperationTimer("operational", "commit"); + doReturn(operationalCommitTimer).when(actorUtils).getOperationTimer("operational", "commit"); doReturn(operationalCommitTimerContext).when(operationalCommitTimer).time(); doReturn(operationalCommitSnapshot).when(operationalCommitTimer).getSnapshot(); - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(i) * 1D).when(operationalCommitSnapshot).getValue(i * 0.1); @@ -184,7 +183,7 @@ public class TransactionRateLimiterTest { DatastoreContext.getGlobalDatastoreNames().add("config"); DatastoreContext.getGlobalDatastoreNames().add("operational"); - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); rateLimiter.acquire(); @@ -194,13 +193,13 @@ public class TransactionRateLimiterTest { } @Test - public void testRateLimiting(){ + public void testRateLimiting() { - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { doReturn(TimeUnit.SECONDS.toNanos(1) * 1D).when(commitSnapshot).getValue(i * 0.1); } - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); StopWatch watch = new StopWatch(); @@ -217,9 +216,9 @@ public class TransactionRateLimiterTest { } @Test - public void testRateLimitNotCalculatedUntilPollCountReached(){ + public void testRateLimitNotCalculatedUntilPollCountReached() { - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(8) * 1D).when(commitSnapshot).getValue(i * 0.1); @@ -229,7 +228,7 @@ public class TransactionRateLimiterTest { doReturn(TimeUnit.MILLISECONDS.toNanos(100) * 1D).when(commitSnapshot).getValue(0.9); doReturn(TimeUnit.MILLISECONDS.toNanos(200) * 1D).when(commitSnapshot).getValue(1.0); - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); rateLimiter.acquire(); @@ -237,7 +236,7 @@ public class TransactionRateLimiterTest { assertEquals(51, rateLimiter.getPollOnCount()); - for(int i=0;i<49;i++){ + for (int i = 0; i < 49; i++) { rateLimiter.acquire(); } @@ -250,9 +249,9 @@ public class TransactionRateLimiterTest { } @Test - public void testAcquireNegativeAcquireAndPollOnCount(){ + public void testAcquireNegativeAcquireAndPollOnCount() { - for(int i=1;i<11;i++){ + for (int i = 1; i < 11; i++) { // Keep on increasing the amount of time it takes to complete transaction for each tenth of a // percentile. Essentially this would be 1ms for the 10th percentile, 2ms for 20th percentile and so on. doReturn(TimeUnit.MILLISECONDS.toNanos(8) * 1D).when(commitSnapshot).getValue(i * 0.1); @@ -262,8 +261,8 @@ public class TransactionRateLimiterTest { doReturn(TimeUnit.MILLISECONDS.toNanos(100) * 1D).when(commitSnapshot).getValue(0.9); doReturn(TimeUnit.MILLISECONDS.toNanos(200) * 1D).when(commitSnapshot).getValue(1.0); - TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorContext); - rateLimiter.setAcquireCount(Long.MAX_VALUE-1); + TransactionRateLimiter rateLimiter = new TransactionRateLimiter(actorUtils); + rateLimiter.setAcquireCount(Long.MAX_VALUE - 1); rateLimiter.setPollOnCount(Long.MAX_VALUE); rateLimiter.acquire(); @@ -272,7 +271,7 @@ public class TransactionRateLimiterTest { assertEquals(-9223372036854775759L, rateLimiter.getPollOnCount()); - for(int i=0;i<50;i++){ + for (int i = 0; i < 50; i++) { rateLimiter.acquire(); } @@ -280,20 +279,20 @@ public class TransactionRateLimiterTest { } - public Matcher approximately(final double val){ + public Matcher approximately(final double val) { return new BaseMatcher() { @Override - public boolean matches(Object o) { - Double aDouble = (Double) o; - return aDouble >= val && aDouble <= val+1; + public boolean matches(Object obj) { + Double value = (Double) obj; + return value >= val && value <= val + 1; } @Override public void describeTo(Description description) { - description.appendText("> " + val +" < " + (val+1)); + description.appendText("> " + val + " < " + (val + 1)); } }; } -} \ No newline at end of file +}