Search in sources :

Example 11 with OffHeapRegionEntry

use of org.apache.geode.internal.cache.OffHeapRegionEntry in project geode by apache.

the class OffHeapRegionEntryHelperJUnitTest method releaseEntryShouldSetValueToRemovePhase2AndSetsAsyncToFalseForDiskEntry.

@Test
public void releaseEntryShouldSetValueToRemovePhase2AndSetsAsyncToFalseForDiskEntry() {
    // mock region entry
    OffHeapRegionEntry re = mock(VersionedStatsDiskRegionEntryOffHeap.class);
    when(re.getAddress()).thenReturn(1L);
    when(re.setAddress(1L, OffHeapRegionEntryHelper.REMOVED_PHASE2_ADDRESS)).thenReturn(Boolean.TRUE);
    DiskId spy = Mockito.spy(DiskId.class);
    when(((DiskEntry) re).getDiskId()).thenReturn(spy);
    when(spy.isPendingAsync()).thenReturn(Boolean.TRUE);
    // mock required methods
    PowerMockito.spy(OffHeapRegionEntryHelper.class);
    PowerMockito.doNothing().when(OffHeapRegionEntryHelper.class);
    OffHeapRegionEntryHelper.setValue(re, Token.REMOVED_PHASE2);
    OffHeapRegionEntryHelper.releaseEntry(re);
    verify(spy, times(1)).setPendingAsync(Boolean.FALSE);
    PowerMockito.verifyStatic();
    OffHeapRegionEntryHelper.setValue(re, Token.REMOVED_PHASE2);
}
Also used : DiskEntry(org.apache.geode.internal.cache.DiskEntry) OffHeapRegionEntry(org.apache.geode.internal.cache.OffHeapRegionEntry) DiskId(org.apache.geode.internal.cache.DiskId) UnitTest(org.apache.geode.test.junit.categories.UnitTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest) Test(org.junit.Test)

Aggregations

OffHeapRegionEntry (org.apache.geode.internal.cache.OffHeapRegionEntry)11 UnitTest (org.apache.geode.test.junit.categories.UnitTest)10 Test (org.junit.Test)10 PrepareForTest (org.powermock.core.classloader.annotations.PrepareForTest)10 Token (org.apache.geode.internal.cache.Token)4 RejectedExecutionException (java.util.concurrent.RejectedExecutionException)1 CancelException (org.apache.geode.CancelException)1 InternalDistributedSystem (org.apache.geode.distributed.internal.InternalDistributedSystem)1 DiskEntry (org.apache.geode.internal.cache.DiskEntry)1 DiskId (org.apache.geode.internal.cache.DiskId)1