@Test
public void testTruncateSealed() throws Exception {
@Cleanup
val baseStorage = new TestStorage();
@Cleanup
val s = new RollingStorage(baseStorage, DEFAULT_ROLLING_POLICY);
s.initialize(1);
s.create(SEGMENT_NAME);
val appendHandle = (RollingSegmentHandle) s.openWrite(SEGMENT_NAME);
val writeStream = new ByteArrayOutputStream();
populate(s, appendHandle, writeStream);
s.seal(appendHandle);
byte[] writtenData = writeStream.toByteArray();
val truncateHandle = (RollingSegmentHandle) s.openWrite(SEGMENT_NAME);
Assert.assertTrue("Handle not read-only after sealing.", truncateHandle.isReadOnly());
Assert.assertTrue("Handle not sealed after sealing.", truncateHandle.isSealed());
testProgressiveTruncate(truncateHandle, truncateHandle, writtenData, s, baseStorage);
}