SqlEntityListener implements EntityListener, RecordStreamFileListener { @Override public void onContractResult(ContractResult contractResult) throws ImporterException { contractResults.add(contractResult); } 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);  }
@Test void onContractResult() throws Exception { ContractResult expectedContractResult = new ContractResult(15L, "function parameters".getBytes(), 10000L, "call result".getBytes(), 10000L); sqlEntityListener.onContractResult(expectedContractResult); completeFileAndCommit(); assertEquals(1, contractResultRepository.count()); assertExistsAndEquals(contractResultRepository, expectedContractResult, 15L); }