### Question:
MemoryBasedTransferRestartManager extends AbstractRestartManager { @Override public FileRestartInfoIdentifier storeRestart(final FileRestartInfo fileRestartInfo) throws FileRestartManagementException { log.info("storeRestart()"); if (fileRestartInfo == null) { throw new IllegalArgumentException("null fileRestartInfo"); } FileRestartInfoIdentifier identifier; synchronized (this) { identifier = FileRestartInfoIdentifier.instanceFromFileRestartInfo(fileRestartInfo); cacheOfRestartInfo.put(identifier, fileRestartInfo); } return identifier; } MemoryBasedTransferRestartManager(); @Override FileRestartInfoIdentifier storeRestart(final FileRestartInfo fileRestartInfo); @Override void deleteRestart(final FileRestartInfoIdentifier fileRestartInfoIdentifier); @Override FileRestartInfo retrieveRestart(final FileRestartInfoIdentifier fileRestartInfoIdentifier); @Override void updateSegment(final FileRestartInfo fileRestartInfo,
			final FileRestartDataSegment fileRestartDataSegment); @Override FileRestartInfo incrementRestartAttempts(final FileRestartInfo fileRestartInfo);  }### Answer:
@Test(expected = IllegalArgumentException.class) public void testStoreNull() throws Exception { MemoryBasedTransferRestartManager manager = new MemoryBasedTransferRestartManager(); manager.storeRestart(null); }