/** * Utility method which loads the previous version of a conceptName to check if the name * property of the given conceptName has changed. * * @param conceptName to be modified * @return boolean indicating change in the name property */ private boolean hasNameChanged(ConceptName conceptName) { String newName = conceptName.getName(); String oldName = dao.getSavedConceptName(conceptName).getName(); return !oldName.equalsIgnoreCase(newName); }
/** * Turn the given concept/concept-name pair into a string acceptable for hl7 and forms * * @param concept Concept to convert to a string * @param localizedName specific localized concept-name * @return String representation of the given concept */ public static String conceptToString(Concept concept, ConceptName localizedName) { return concept.getConceptId() + "^" + localizedName.getName() + "^" + HL7Constants.HL7_LOCAL_CONCEPT; // + "^" }
/** * @param name A name * @return whether this concept has the given name in any locale */ public boolean isNamed(String name) { return getNames().stream().anyMatch(cn -> name.equals(cn.getName())); }
@Override public String toString() { if (StringUtils.isNotBlank(reactionNonCoded)) { return reactionNonCoded; } return reaction.getName().getName(); }
@Override public String toString() { if (StringUtils.isNotBlank(nonCodedAllergen)) { return nonCodedAllergen; } return codedAllergen.getName().getName(); }
/** * @see org.openmrs.Attributable#getDisplayString() */ @Override public String getDisplayString() { if (getName() == null) { return toString(); } else { return getName().getName(); } }
/** * Gets the entries concept drug name in the form of CONCEPTNAME (Drug: DRUGNAME) * * @param locale * @return full drug name (with concept name appended) */ public String getFullName(Locale locale) { if (concept == null) { return getName(); } else { return getName() + " (" + concept.getName(locale).getName() + ")"; } }
/** * @see BaseOpenmrsDatatype#doGetTextSummary(Object) * @should use the name in summary instance */ @Override public Summary doGetTextSummary(Concept concept) { String name = ""; if (concept != null && concept.getName() != null) { name = concept.getName().getName(); } return new CustomDatatype.Summary(name, true); } }
/** * @see ConceptServiceImpl#getConcepts(String, Locale, boolean) */ @Test public void getConcepts_shouldGiveAListOfConceptSearchResultForTheMatchingConcepts() { Locale locale = new Locale("en", "GB"); String phrase = "CD4 COUNT"; List<ConceptSearchResult> res = conceptService.getConcepts(phrase, locale, true); assertEquals(res.get(0).getConceptName().getName(), phrase); }
@Test public void getPreferredName_shouldReturnTheBesLocalePreferred() { Concept testConcept = createConcept(1, Locale.US); ConceptName preferredName = createConceptName(4, "Doctor", new Locale("en"), null, true); testConcept.addName(preferredName); Assert.assertEquals(preferredName.getName(), testConcept.getPreferredName(Locale.US).getName()); }
/** * @see ConceptServiceImpl#findConceptAnswers(String, Locale, Concept) */ @Test public void findConceptAnswers_shouldReturnAListOfAllMatchingConceptSearchResults() { Locale locale = new Locale("en", "GB"); String phrase = "CD4 COUNT"; int conceptId = 5497; List<ConceptSearchResult> concepts = conceptService.findConceptAnswers(phrase, locale, conceptService.getConcept(conceptId)); assertEquals(concepts.get(0).getConceptName().getName(), phrase); }
/** * @see ConceptService#getConcepts(String, List, boolean, List, List, List, List, Concept, Integer, Integer) */ @Test public void getConcepts_shouldReturnASearchResultForPhraseWithStopWords() { executeDataSet("org/openmrs/api/include/ConceptServiceTest-names.xml"); conceptService.saveConceptStopWord(new ConceptStopWord("OF", Locale.US)); List<ConceptSearchResult> searchResults = conceptService.getConcepts("tuberculosis of knee", Collections .singletonList(new Locale("en", "US")), false, null, null, null, null, null, null, null); Assert.assertEquals(1, searchResults.size()); Assert.assertEquals("Tuberculosis of Knee", searchResults.get(0).getConceptName().getName()); }
@Test public void getShortNameInLocale_shouldReturnTheBestShortNameForAConcept() { Concept concept = new Concept(); concept.addName(new ConceptName("Giant cat", new Locale("en"))); concept.addName(new ConceptName("Gato gigante", new Locale("es", "MX"))); ConceptName shortName1 = new ConceptName("Cat", new Locale("en")); shortName1.setConceptNameType(ConceptNameType.SHORT); concept.addName(shortName1); ConceptName shortName2 = new ConceptName("Gato", new Locale("es")); shortName2.setConceptNameType(ConceptNameType.SHORT); concept.addName(shortName2); Assert.assertEquals("Gato", concept.getShortNameInLocale(new Locale("es", "ES")).getName()); }
/** * @see OrderService#getNonCodedDrugConcept() */ @Test public void getNonCodedDrugConcept_shouldReturnAConceptIfGPIsSet() { executeDataSet("org/openmrs/api/include/OrderServiceTest-nonCodedDrugs.xml"); Concept nonCodedDrugConcept = orderService.getNonCodedDrugConcept(); assertNotNull(nonCodedDrugConcept); assertThat(nonCodedDrugConcept.getConceptId(), is(5584)); assertEquals(nonCodedDrugConcept.getName().getName(), "DRUG OTHER"); }
@Test public void validate_shouldPassIfTheDuplicateConceptNameIsNeitherPreferredNorFullySpecified() { Context.setLocale(new Locale("en", "GB")); Concept concept = cd4Count; //use a synonym as the duplicate name ConceptName duplicateName = concept.getSynonyms(Context.getLocale()).iterator().next(); Assert.assertEquals(true, duplicateName.isSynonym()); Concept anotherConcept = weight; anotherConcept.getFullySpecifiedName(Context.getLocale()).setName(duplicateName.getName()); Errors errors = new BindException(anotherConcept, "concept"); validator.validate(anotherConcept, errors); Assert.assertEquals(false, errors.hasErrors()); }
/** * @see Concept#addName(ConceptName) */ @Test public void addName_shouldMarkTheFirstNameAddedAsFullySpecified() { Concept concept = new Concept(); concept.addName(new ConceptName("some name", Context.getLocale())); Assert.assertEquals("some name", concept.getFullySpecifiedName(Context.getLocale()).getName()); }
@Test public void validate_shouldFailIfThereIsADuplicateUnretiredFullySpecifiedNameInTheSameLocale() { Context.setLocale(new Locale("en", "GB")); Assert.assertEquals(true, cd4Count.getFullySpecifiedName(Context.getLocale()).isFullySpecifiedName()); String duplicateName = cd4Count.getFullySpecifiedName(Context.getLocale()).getName(); Concept anotherConcept = weight; anotherConcept.getFullySpecifiedName(Context.getLocale()).setName(duplicateName); Errors errors = new BindException(anotherConcept, "concept"); expectedException.expect(DuplicateConceptNameException.class); expectedException .expectMessage("'" + duplicateName + "' is a duplicate name in locale '" + Context.getLocale() + "'"); validator.validate(anotherConcept, errors); }
/** * @see Concept#getShortestName(Locale,Boolean) */ @Test public void getShortestName_shouldReturnTheNameMarkedAsTheShortNameForTheLocaleIfItIsPresent() { Concept concept = new Concept(); concept.addName(new ConceptName("shortName123", Context.getLocale())); concept.setShortName(new ConceptName("shortName12", Context.getLocale())); concept.setShortName(new ConceptName("shortName1", Locale.US)); Assert.assertEquals("shortName1", concept.getShortestName(Locale.US, null).getName()); }
/** * @see Concept#getShortestName(Locale,Boolean) */ @Test public void getShortestName_shouldReturnTheShortestNameInAGivenLocaleForAConceptIfExactIsTrue() { Concept concept = new Concept(); concept.addName(new ConceptName("shortName123", Context.getLocale())); concept.addName(new ConceptName("shortName12", Context.getLocale())); concept.addName(new ConceptName("shortName1", Locale.US)); concept.addName(new ConceptName("shortName", Locale.FRANCE)); Assert.assertEquals("shortName12", concept.getShortestName(Context.getLocale(), true).getName()); }
/** * @see Concept#getShortestName(Locale,Boolean) */ @Test public void getShortestName_shouldReturnTheShortestNameForTheConceptFromAnyLocaleIfExactIsFalse() { Concept concept = new Concept(); concept.addName(new ConceptName("shortName123", Context.getLocale())); concept.addName(new ConceptName("shortName12", Context.getLocale())); concept.addName(new ConceptName("shortName1", Locale.US)); concept.addName(new ConceptName("shortName", Locale.FRANCE)); Assert.assertEquals("shortName", concept.getShortestName(Context.getLocale(), false).getName()); }