### Question:
BaseHapiFhirDao extends BaseStorageDao implements IDao, IJpaDao<T>, ApplicationContextAware { static String cleanProvenanceSourceUri(String theProvenanceSourceUri) { if (isNotBlank(theProvenanceSourceUri)) { int hashIndex = theProvenanceSourceUri.indexOf('#'); if (hashIndex != -1) { theProvenanceSourceUri = theProvenanceSourceUri.substring(0, hashIndex); } } return defaultString(theProvenanceSourceUri); }  @Override void setApplicationContext(ApplicationContext theApplicationContext); @Override DaoConfig getConfig(); void setConfig(DaoConfig theConfig); @Override FhirContext getContext(); @Autowired void setContext(FhirContext theContext); FhirContext getContext(FhirVersionEnum theVersion); boolean isLogicalReference(IIdType theId); void notifyInterceptors(RestOperationTypeEnum theOperationType, ActionRequestDetails theRequestDetails); @CoverageIgnore BaseHasResource readEntity(IIdType theValueId, RequestDetails theRequest); @Override IBaseResource toResource(BaseHasResource theEntity, boolean theForHistoryOperation); @SuppressWarnings("unchecked") @Override R toResource(Class<R> theResourceType, IBaseResourceEntity theEntity, Collection<ResourceTag> theTagList, boolean theForHistoryOperation); String toResourceName(Class<? extends IBaseResource> theResourceType); @SuppressWarnings("unchecked") @Override ResourceTable updateEntity(RequestDetails theRequest, final IBaseResource theResource, IBasePersistedResource
		theEntity, Date theDeletedTimestampOrNull, boolean thePerformIndexing,
												 boolean theUpdateVersion, TransactionDetails theTransactionDetails, boolean theForceUpdate, boolean theCreateNewHistoryEntry); @Override ResourceTable updateInternal(RequestDetails theRequestDetails, T theResource, boolean thePerformIndexing, boolean theForceUpdateVersion,
													IBasePersistedResource theEntity, IIdType theResourceId, IBaseResource theOldResource, TransactionDetails theTransactionDetails); @PostConstruct void start(); @SuppressWarnings("unchecked") static String parseContentTextIntoWords(FhirContext theContext, IBaseResource theResource); static void clearRequestAsProcessingSubRequest(ServletRequestDetails theRequestDetails); static void markRequestAsProcessingSubRequest(ServletRequestDetails theRequestDetails); static void populateFullTextFields(final FhirContext theContext, final IBaseResource theResource, ResourceTable theEntity); static String decodeResource(byte[] theResourceBytes, ResourceEncodingEnum theResourceEncoding); static byte[] encodeResource(IBaseResource theResource, ResourceEncodingEnum theEncoding, Set<String> theExcludeElements, FhirContext theContext); @VisibleForTesting static void setDisableIncrementOnUpdateForUnitTest(boolean theDisableIncrementOnUpdateForUnitTest); @VisibleForTesting static void setValidationDisabledForUnitTest(boolean theValidationDisabledForUnitTest); static void validateResourceType(BaseHasResource theEntity, String theResourceName); static final long INDEX_STATUS_INDEXED; static final long INDEX_STATUS_INDEXING_FAILED; static final String NS_JPA_PROFILE; static final String OO_SEVERITY_ERROR; static final String OO_SEVERITY_INFO; static final String OO_SEVERITY_WARN; }### Answer:
@Test public void cleanProvenanceSourceUri() { assertEquals("", BaseHapiFhirDao.cleanProvenanceSourceUri(null)); assertEquals("abc", BaseHapiFhirDao.cleanProvenanceSourceUri("abc")); assertEquals("abc", BaseHapiFhirDao.cleanProvenanceSourceUri("abc#def")); assertEquals("abc", BaseHapiFhirDao.cleanProvenanceSourceUri("abc#def#ghi")); }