### Question:
DBRecordProvider extends BaseProvider implements RecordProvider, ConnectionPoolListener { @Override @TrackTime public Record getRecord(String id) throws OaiPmhException { String recordId = prepareRecordId(id); FullBean bean = getFullBean(recordId); return new Record(getHeader(id, bean), prepareRDFMetadata(recordId, (FullBeanImpl) bean)); }  @Override void connectionPoolOpened(ConnectionPoolOpenedEvent connectionPoolOpenedEvent); @Override void connectionPoolClosed(ConnectionPoolClosedEvent connectionPoolClosedEvent); @Override void connectionCheckedOut(ConnectionCheckedOutEvent connectionCheckedOutEvent); @Override void connectionCheckedIn(ConnectionCheckedInEvent connectionCheckedInEvent); @Override void waitQueueEntered(ConnectionPoolWaitQueueEnteredEvent connectionPoolWaitQueueEnteredEvent); @Override void waitQueueExited(ConnectionPoolWaitQueueExitedEvent connectionPoolWaitQueueExitedEvent); @Override synchronized void connectionAdded(ConnectionAddedEvent connectionAddedEvent); @Override synchronized void connectionRemoved(ConnectionRemovedEvent connectionRemovedEvent); @Override @TrackTime Record getRecord(String id); @Override void checkRecordExists(String id); @TrackTime String getEDM(RDF rdf); @TrackTime RDF getRDF(FullBeanImpl bean); @Override ListRecords listRecords(List<Header> identifiers); @Override @PreDestroy void close();  }### Answer:
@Test public void getRecord() throws IOException, EuropeanaException, OaiPmhException { String record = loadRecord(); prepareTest(record); Record preparedRecord = prepareRecord(record); Record retrievedRecord = recordProvider.getRecord(TEST_RECORD_ID); Assert.assertNotNull(retrievedRecord); assertRecordEquals(retrievedRecord, preparedRecord); }