@Test
  public void throwsIllegalStateExceptionIfMissingOplogDrf() throws Exception {
    DiskRegionProperties diskRegionProperties = new DiskRegionProperties();
    diskRegionProperties.setRegionName(regionName);
    diskRegionProperties.setDiskDirs(diskDirs);
    diskRegionProperties.setPersistBackup(true);

    DiskStoreFactory diskStoreFactory = toDiskStoreFactory(diskRegionProperties);

    DiskStore diskStore = createDiskStoreWithSizeInBytes(diskStoreName, diskStoreFactory);

    Region<Object, Object> region =
        createRegion(regionName, diskStoreName, true, true, false, false, 0);

    region.close();
    closeDiskStore(diskStore);

    Path oplogFile = Files.list(diskDirs[0].toPath())
        .filter(path -> path.toString().endsWith(".drf")).findFirst().get();

    Files.delete(oplogFile);

    String expectedMessage =
        "The following required files could not be found: *.drf files with these ids:";

    Throwable thrown = catchThrowable(() -> createDiskStoreWithSizeInBytes(diskStoreName,
        toDiskStoreFactory(diskRegionProperties)));
    assertThat(thrown).isInstanceOf(IllegalStateException.class)
        .hasMessageContaining(expectedMessage).hasNoCause();
  }
If IOException occurs while initializing a region, then the cache servers should not be
stopped
geode-core/src/integrationTest/java/org/apache/geode/internal/cache/DiskRegionJUnitTest.java