use of org.openmrs.ConceptName in project openmrs-core by openmrs.
the class ConceptServiceTest method saveConcept_shouldSaveChangesBetweenConceptNumericAndComplex.
/**
* @see ConceptService#saveConcept(Concept)
*/
@Test
public void saveConcept_shouldSaveChangesBetweenConceptNumericAndComplex() {
executeDataSet(INITIAL_CONCEPTS_XML);
// save a concept numeric
ConceptNumeric cn = new ConceptNumeric(1);
cn.setDatatype(new ConceptDatatype(1));
cn.setConceptClass(new ConceptClass(1));
cn.addName(new ConceptName("a new conceptnumeric", Locale.US));
cn.addDescription(new ConceptDescription("some description", null));
cn.setHiAbsolute(20.0);
conceptService.saveConcept(cn);
// confirm that we saved a concept numeric
Concept firstConcept = conceptService.getConceptNumeric(1);
assertEquals("a new conceptnumeric", firstConcept.getName(Locale.US).getName());
assertTrue(firstConcept instanceof ConceptNumeric);
ConceptNumeric firstConceptNumeric = (ConceptNumeric) firstConcept;
assertEquals(20.0, firstConceptNumeric.getHiAbsolute(), 0);
// change to concept complex
ConceptComplex cn2 = new ConceptComplex(1);
cn2.setDatatype(new ConceptDatatype(13));
cn2.setConceptClass(new ConceptClass(1));
cn2.addName(new ConceptName("a new conceptComplex", Locale.US));
cn2.addDescription(new ConceptDescription("some description", null));
cn2.setHandler("SomeHandler");
conceptService.saveConcept(cn2);
// confirm that we saved a concept complex
firstConcept = conceptService.getConceptComplex(1);
assertEquals("a new conceptComplex", firstConcept.getName(Locale.US).getName());
assertTrue(firstConcept instanceof ConceptComplex);
ConceptComplex firstConceptComplex = (ConceptComplex) firstConcept;
assertEquals("SomeHandler", firstConceptComplex.getHandler());
// change to concept numeric
cn = new ConceptNumeric(1);
ConceptDatatype dt = new ConceptDatatype(1);
dt.setName("Numeric");
cn.setDatatype(dt);
cn.setConceptClass(new ConceptClass(1));
cn.addName(new ConceptName("a new conceptnumeric", Locale.US));
cn.addDescription(new ConceptDescription("some description", null));
cn.setHiAbsolute(20.0);
conceptService.saveConcept(cn);
// confirm that we saved a concept numeric
firstConcept = conceptService.getConceptNumeric(1);
assertEquals("a new conceptnumeric", firstConcept.getName(Locale.US).getName());
assertTrue(firstConcept instanceof ConceptNumeric);
firstConceptNumeric = (ConceptNumeric) firstConcept;
assertEquals(20.0, firstConceptNumeric.getHiAbsolute(), 0);
// change to concept complex
cn2 = new ConceptComplex(1);
cn2.setDatatype(new ConceptDatatype(13));
cn2.setConceptClass(new ConceptClass(1));
cn2.addName(new ConceptName("a new conceptComplex", Locale.US));
cn2.addDescription(new ConceptDescription("some description", null));
cn2.setHandler("SomeHandler");
conceptService.saveConcept(cn2);
// confirm we saved a concept complex
firstConcept = conceptService.getConceptComplex(1);
assertEquals("a new conceptComplex", firstConcept.getName(Locale.US).getName());
assertTrue(firstConcept instanceof ConceptComplex);
firstConceptComplex = (ConceptComplex) firstConcept;
assertEquals("SomeHandler", firstConceptComplex.getHandler());
}
use of org.openmrs.ConceptName in project openmrs-core by openmrs.
the class ConceptServiceTest method saveConcept_shouldCreateAReferenceTermForAConceptMappingOnTheFlyWhenCreatingAConcept.
/**
* @see ConceptService#saveConcept(Concept)
*/
@Test
public void saveConcept_shouldCreateAReferenceTermForAConceptMappingOnTheFlyWhenCreatingAConcept() {
int initialTermCount = conceptService.getAllConceptReferenceTerms().size();
Concept concept = new Concept();
concept.addName(new ConceptName("test name", Context.getLocale()));
concept.setDatatype(new ConceptDatatype(1));
concept.setConceptClass(new ConceptClass(1));
ConceptMap map = new ConceptMap();
map.getConceptReferenceTerm().setCode("unique code");
map.getConceptReferenceTerm().setConceptSource(conceptService.getConceptSource(1));
concept.addDescription(new ConceptDescription("some description", null));
concept.addConceptMapping(map);
conceptService.saveConcept(concept);
Assert.assertNotNull(concept.getId());
Assert.assertEquals(initialTermCount + 1, conceptService.getAllConceptReferenceTerms().size());
}
use of org.openmrs.ConceptName in project openmrs-core by openmrs.
the class ConceptServiceTest method saveConcept_shouldKeepIdForNewConceptIfOneIsSpecified.
/**
* @see ConceptService#saveConcept(Concept)
*/
@Test
public void saveConcept_shouldKeepIdForNewConceptIfOneIsSpecified() {
// a nonexistent concept id;
Integer conceptId = 343434;
// sanity check
Assert.assertNull(conceptService.getConcept(conceptId));
Concept concept = new Concept();
ConceptName cn = new ConceptName("Weight", Context.getLocale());
concept.addName(cn);
concept.addDescription(new ConceptDescription("some description", null));
concept.setConceptId(conceptId);
concept.setDatatype(Context.getConceptService().getConceptDatatypeByName("Numeric"));
concept.setConceptClass(Context.getConceptService().getConceptClassByName("Finding"));
concept = Context.getConceptService().saveConcept(concept);
assertTrue(concept.getConceptId().equals(conceptId));
}
use of org.openmrs.ConceptName in project openmrs-core by openmrs.
the class ConceptServiceTest method saveConcept_shouldSaveNonConceptComplexObjectAsConceptComplex.
/**
* @see ConceptService#saveConcept(Concept)
*/
@Test
public void saveConcept_shouldSaveNonConceptComplexObjectAsConceptComplex() {
executeDataSet(INITIAL_CONCEPTS_XML);
// this tests saving a current concept as a newly changed conceptComplex
// assumes there is already a concept in the database
// with a concept id of #1
ConceptComplex cn = new ConceptComplex(1);
cn.setDatatype(new ConceptDatatype(13));
cn.setConceptClass(new ConceptClass(1));
cn.addName(new ConceptName("a new conceptComplex", Locale.US));
cn.addDescription(new ConceptDescription("some description", null));
cn.setHandler("SomeHandler");
conceptService.saveConcept(cn);
Concept firstConcept = conceptService.getConceptComplex(1);
assertEquals("a new conceptComplex", firstConcept.getName(Locale.US).getName());
assertTrue(firstConcept instanceof ConceptComplex);
ConceptComplex firstConceptComplex = (ConceptComplex) firstConcept;
assertEquals("SomeHandler", firstConceptComplex.getHandler());
}
use of org.openmrs.ConceptName in project openmrs-core by openmrs.
the class ConceptServiceTest method saveConcept_shouldSetAPreferredNameForEachLocaleIfNoneIsMarked.
/**
* @see ConceptService#saveConcept(Concept)
*/
@Test
public void saveConcept_shouldSetAPreferredNameForEachLocaleIfNoneIsMarked() {
// add some other locales to locale.allowed.list for testing purposes
GlobalProperty gp = Context.getAdministrationService().getGlobalPropertyObject(OpenmrsConstants.GLOBAL_PROPERTY_LOCALE_ALLOWED_LIST);
gp.setPropertyValue(gp.getPropertyValue().concat(",fr,ja,en_GB"));
Context.getAdministrationService().saveGlobalProperty(gp);
Concept concept = new Concept();
concept.addName(new ConceptName("name1", Locale.ENGLISH));
concept.addName(new ConceptName("name2", Locale.ENGLISH));
concept.addName(new ConceptName("name3", Locale.FRENCH));
concept.addName(new ConceptName("name4", Locale.FRENCH));
concept.addName(new ConceptName("name5", Locale.JAPANESE));
concept.addName(new ConceptName("name6", Locale.JAPANESE));
concept.addDescription(new ConceptDescription("some description", null));
concept.setDatatype(new ConceptDatatype(1));
concept.setConceptClass(new ConceptClass(1));
concept = Context.getConceptService().saveConcept(concept);
Assert.assertNotNull(concept.getPreferredName(Locale.ENGLISH));
Assert.assertNotNull(concept.getPreferredName(Locale.FRENCH));
Assert.assertNotNull(concept.getPreferredName(Locale.JAPANESE));
}
Aggregations