### Question:
SqlEntityListener implements EntityListener, RecordStreamFileListener { @Override public void onTransaction(Transaction transaction) throws ImporterException { transactions.add(transaction); if (transactions.size() == sqlProperties.getBatchSize()) { executeBatches(); } } SqlEntityListener(SqlProperties sqlProperties, DataSource dataSource,
                             RecordFileRepository recordFileRepository, MeterRegistry meterRegistry,
                             @Qualifier(CacheConfiguration.NEVER_EXPIRE_LARGE) CacheManager cacheManager,
                             ApplicationStatusRepository applicationStatusRepository,
                             EntityRepository entityRepository, ApplicationEventPublisher eventPublisher,
                             TokenRepository tokenRepository, TokenAccountRepository tokenAccountRepository); @Override boolean isEnabled(); @Override RecordFile onStart(StreamFileData streamFileData); @Override void onEnd(RecordFile recordFile); @Override void onError(); @Override void onTransaction(Transaction transaction); @Override void onEntityId(EntityId entityId); @Override void onCryptoTransfer(CryptoTransfer cryptoTransfer); @Override void onNonFeeTransfer(NonFeeTransfer nonFeeTransfer); @Override void onTopicMessage(TopicMessage topicMessage); @Override void onContractResult(ContractResult contractResult); @Override void onFileData(FileData fd); @Override void onLiveHash(LiveHash liveHash); @Override void onToken(Token token); @Override void onTokenAccount(TokenAccount tokenAccount); @Override void onTokenTransfer(TokenTransfer tokenTransfer);  }### Answer:
@Test void onTransaction() throws Exception { var expectedTransaction = makeTransaction(); sqlEntityListener.onTransaction(expectedTransaction); completeFileAndCommit(); assertEquals(1, transactionRepository.count()); assertExistsAndEquals(transactionRepository, expectedTransaction, 101L); }