You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@geode.apache.org by GitBox <gi...@apache.org> on 2022/02/01 18:23:32 UTC

[GitHub] [geode] mhansonp commented on a change in pull request #7113: GEODE-9809: stop monitoring of destroyed regions

mhansonp commented on a change in pull request #7113:
URL: https://github.com/apache/geode/pull/7113#discussion_r796878087



##########
File path: geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/PersistentBucketRecovererTest.java
##########
@@ -72,4 +80,78 @@ public void latchCanBeCountedDown() {
 
     recoverer.await();
   }
+
+  @Test
+  public void runLoggingThread() {
+    PartitionedRegion baseRegion = mock(PartitionedRegion.class);
+    InternalResourceManager internalResourceManager = mock(InternalResourceManager.class);
+    InternalCache internalCache = mock(InternalCache.class);
+    DistributedRegion prRoot = mock(DistributedRegion.class);
+
+    when(baseRegion.getCache()).thenReturn(internalCache);
+    when(baseRegion.getGemFireCache()).thenReturn(internalCache);
+
+    DistributedSystem distributedSystem = mock(DistributedSystem.class);
+    CancelCriterion cancelCriterion = mock(CancelCriterion.class);
+    when(internalCache.getDistributedSystem()).thenReturn(distributedSystem);
+    when(distributedSystem.getCancelCriterion()).thenReturn(cancelCriterion);
+    when(cancelCriterion.isCancelInProgress()).thenReturn(false);
+
+    when(internalCache.getRegion(PartitionedRegionHelper.PR_ROOT_REGION_NAME, true))
+        .thenReturn(prRoot);
+
+    PartitionAttributes partitionAttributes = mock(PartitionAttributes.class);
+    when(baseRegion.getPartitionAttributes()).thenReturn(partitionAttributes);
+    when(partitionAttributes.getColocatedWith()).thenReturn(null);
+
+    DataPolicy dataPolicy = mock(DataPolicy.class);
+    when(baseRegion.getDataPolicy()).thenReturn(dataPolicy);
+    when(dataPolicy.withPersistence()).thenReturn(true);
+
+    RegionAttributes regionAttributes = mock(RegionAttributes.class);
+    when(regionAttributes.getDataPolicy()).thenReturn(dataPolicy);
+    when(baseRegion.getAttributes()).thenReturn(regionAttributes);
+
+    DiskStoreImpl diskStore = mock(DiskStoreImpl.class);
+    when(baseRegion.getDiskStore()).thenReturn(diskStore);
+
+    RegionAdvisor regionAdvisor = mock(RegionAdvisor.class);
+    when(baseRegion.getRegionAdvisor()).thenReturn(regionAdvisor);
+
+    int numberOfProxyBuckets = 5;
+
+    ProxyBucketRegion[] bucs = new ProxyBucketRegion[numberOfProxyBuckets];
+
+    ProxyBucketRegion bucketRegion1 = mock(ProxyBucketRegion.class);
+    ProxyBucketRegion bucketRegion2 = mock(ProxyBucketRegion.class);
+    ProxyBucketRegion bucketRegion3 = mock(ProxyBucketRegion.class);
+    ProxyBucketRegion bucketRegion4 = mock(ProxyBucketRegion.class);
+    ProxyBucketRegion bucketRegion5 = mock(ProxyBucketRegion.class);
+
+    bucs[0] = bucketRegion1;
+    bucs[1] = bucketRegion2;
+    bucs[2] = bucketRegion3;
+    bucs[3] = bucketRegion4;
+    bucs[4] = bucketRegion5;
+    when(regionAdvisor.getProxyBucketArray()).thenReturn(bucs);
+
+    BucketPersistenceAdvisor persistenceAdvisor = mock(BucketPersistenceAdvisor.class);
+    when(bucketRegion1.getPersistenceAdvisor()).thenReturn(persistenceAdvisor);
+    when(bucketRegion2.getPersistenceAdvisor()).thenReturn(persistenceAdvisor);
+    when(bucketRegion3.getPersistenceAdvisor()).thenReturn(persistenceAdvisor);
+    when(bucketRegion4.getPersistenceAdvisor()).thenReturn(persistenceAdvisor);
+    when(bucketRegion5.getPersistenceAdvisor()).thenReturn(persistenceAdvisor);
+    when(persistenceAdvisor.isClosed()).thenReturn(true);

Review comment:
       Could you use a for loop to reduce duplication please? 




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@geode.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org