### Question:
ConsumeQueueExt { public CqExtUnit get(final long address) { CqExtUnit cqExtUnit = new CqExtUnit(); if (get(address, cqExtUnit)) { return cqExtUnit; } return null; } ConsumeQueueExt(final String topic,
                           final int queueId,
                           final String storePath,
                           final int mappedFileSize,
                           final int bitMapLength); boolean isExtAddr(final long address); long unDecorate(final long address); long decorate(final long offset); CqExtUnit get(final long address); boolean get(final long address, final CqExtUnit cqExtUnit); long put(final CqExtUnit cqExtUnit); boolean load(); void checkSelf(); void recover(); void truncateByMinAddress(final long minAddress); void truncateByMaxAddress(final long maxAddress); boolean flush(final int flushLeastPages); void destroy(); long getMaxAddress(); long getMinAddress(); static final int END_BLANK_DATA_LENGTH; static final long MAX_ADDR; static final long MAX_REAL_OFFSET; }### Answer:
@Test public void testGet() { ConsumeQueueExt consumeQueueExt = genExt(); putSth(consumeQueueExt, false, false, unitCount); try { long addr = consumeQueueExt.decorate(0); ConsumeQueueExt.CqExtUnit unit = new ConsumeQueueExt.CqExtUnit(); while (true) { boolean ret = consumeQueueExt.get(addr, unit); if (!ret) { break; } assertThat(unit.getSize()).isGreaterThanOrEqualTo(ConsumeQueueExt.CqExtUnit.MIN_EXT_UNIT_SIZE); addr += unit.getSize(); } } finally { consumeQueueExt.destroy(); deleteDirectory(storePath); } }