### Question:
AsperaTransactionImpl implements AsperaTransaction { @Override public boolean progress() { return doesStatusMatch(PROGRESS); } AsperaTransactionImpl(String xferid, String bucketName, String key, String fileName, TransferProgress transferProgress, ProgressListenerChain listenerChain); @Override boolean pause(); @Override boolean resume(); @Override boolean cancel(); @Override boolean isDone(); @Override boolean progress(); @Override boolean onQueue(); @Override String getBucketName(); @Override String getKey(); @Override AsperaResult waitForCompletion(); @Override void addProgressListener(ProgressListener listener); @Override void removeProgressListener(ProgressListener listener); @Override ProgressListenerChain getProgressListenerChain(); @Override TransferProgress getProgress(); @Override ITransferListener getTransferListener();  }### Answer:
@Test public void testAsperaTransactionIsProgress(){ transferListener = TransferListener.getInstance(xferId, null); AsperaTransfer asperaTransaction = new AsperaTransactionImpl(xferId, null, null, null, null, null); transferListener.transferReporter(xferId, msgQueued); transferListener.transferReporter(xferId, msgStats); assertTrue(asperaTransaction.progress()); }