package org.openehr.terminology; import java.util.Set; import org.openehr.rm.datatypes.text.CodePhrase; import org.openehr.rm.support.terminology.*; import junit.framework.TestCase; public class OpenEHRTerminologyTest extends TestCase { public OpenEHRTerminologyTest() throws Exception { service = SimpleTerminologyService.getInstance(); } public void setUp() throws Exception { } public void testHasOpenEHRSettingCode() { TerminologyAccess terminology = service.terminology( TerminologyService.OPENEHR); assertNotNull("openEHR terminology missing", terminology); Set<CodePhrase> codes = terminology.codesForGroupName("setting", "en"); assertNotNull("setting(en) missing", codes); CodePhrase home = new CodePhrase("openehr", "225"); assertTrue("code 225 (home) doesn't exist..", codes.contains(home)); } public void testRubricForCode() throws Exception { TerminologyAccess terminology = service.terminology( TerminologyService.OPENEHR); assertEquals("event", terminology.rubricForCode("433", "en")); assertEquals("initial", terminology.rubricForCode("524", "en")); } public void testHasCountryCodes() throws Exception { CodeSetAccess codeSet = service.codeSetForId( OpenEHRCodeSetIdentifiers.COUNTRIES); assertNotNull("countries codeSet missing", codeSet); assertTrue("China missing", codeSet.hasCode(new CodePhrase("ISO_3166-1", "CN"))); assertTrue("Sweden missing", codeSet.hasCode(new CodePhrase("ISO_3166-1", "SE"))); assertTrue("United Kingdom missing", codeSet.hasCode(new CodePhrase("ISO_3166-1", "GB"))); assertTrue("Denmark missing", codeSet.hasCode(new CodePhrase("ISO_3166-1", "DK"))); assertTrue("France missing", codeSet.hasCode(new CodePhrase("ISO_3166-1", "FR"))); } public void testHasOpenEHRCode() throws Exception { TerminologyAccess terminology = service.terminology( TerminologyService.OPENEHR); assertTrue("code for signed missing", terminology.allCodes().contains( new CodePhrase(TerminologyService.OPENEHR, "240"))); } // TODO some test isolation issue here.. public void _testHasPlainTextMediaType() throws Exception { CodeSetAccess codeSet = service.codeSetForId( OpenEHRCodeSetIdentifiers.MEDIA_TYPES); CodePhrase mediaType = new CodePhrase("IANA_media-types", "text/plain"); assertTrue("media type: text/plain is missing", codeSet.hasCode(mediaType)); } public void __testHasCompressionAlgorithmsOther() throws Exception { CodeSetAccess codeSet = service.codeSetForId( OpenEHRCodeSetIdentifiers.COMPRESSION_ALGORITHMS); CodePhrase mediaType = new CodePhrase("openehr_compression_algorithms", "others"); assertTrue("openehr_compression_algorithms is missing", codeSet.hasCode(mediaType)); } TerminologyService service; }