1212import static gov .cdc .usds .simplereport .api .Translators .parseUUID ;
1313import static gov .cdc .usds .simplereport .api .Translators .parseUserShortDate ;
1414import static gov .cdc .usds .simplereport .api .Translators .parseYesNoUnk ;
15+ import static gov .cdc .usds .simplereport .api .converter .FhirConstants .DETECTED_SNOMED ;
16+ import static gov .cdc .usds .simplereport .api .converter .FhirConstants .INVALID_SNOMED ;
17+ import static gov .cdc .usds .simplereport .api .converter .FhirConstants .NOT_DETECTED_SNOMED ;
18+ import static gov .cdc .usds .simplereport .api .converter .FhirConstants .POSITIVE_SNOMED ;
1519import static org .assertj .core .api .Assertions .assertThat ;
1620import static org .junit .jupiter .api .Assertions .assertEquals ;
1721import static org .junit .jupiter .api .Assertions .assertNotNull ;
2024
2125import gov .cdc .usds .simplereport .api .model .errors .IllegalGraphqlArgumentException ;
2226import gov .cdc .usds .simplereport .db .model .auxiliary .PersonName ;
27+ import gov .cdc .usds .simplereport .db .model .auxiliary .SnomedConceptRecord ;
2328import gov .cdc .usds .simplereport .db .model .auxiliary .TestResult ;
2429import java .time .LocalDate ;
2530import java .util .Collections ;
@@ -415,24 +420,6 @@ void badOrganizationType() {
415420 assertEquals ("[not-a-type] is not a valid organization type" , caught .getMessage ());
416421 }
417422
418- @ Test
419- void convertsPositiveLoincToTestResult () {
420- TestResult result = Translators .convertSnomedToResult ("260373001" );
421- assertEquals (TestResult .POSITIVE , result );
422- }
423-
424- @ Test
425- void convertsNegativeLoincToTestResult () {
426- TestResult result = Translators .convertSnomedToResult ("260415000" );
427- assertEquals (TestResult .NEGATIVE , result );
428- }
429-
430- @ Test
431- void convertsUnknownLoincToTestResult () {
432- TestResult result = Translators .convertSnomedToResult ("blah" );
433- assertEquals (TestResult .UNDETERMINED , result );
434- }
435-
436423 @ Test
437424 void convertsPositiveTestResultToAppropriateLoinc () {
438425 String loinc = Translators .convertTestResultToSnomed (TestResult .POSITIVE );
@@ -451,6 +438,27 @@ void convertsUnknownTestResultToAppropriateLoinc() {
451438 assertEquals ("455371000124106" , loinc );
452439 }
453440
441+ @ Test
442+ void convertsSnomedCodeToAppropriateSnomedConceptName () {
443+ SnomedConceptRecord result = Translators .getSnomedConceptByCode (POSITIVE_SNOMED );
444+ assertEquals ("Positive" , result .name ());
445+
446+ result = Translators .getSnomedConceptByCode (DETECTED_SNOMED );
447+ assertEquals ("Detected" , result .name ());
448+
449+ result = Translators .getSnomedConceptByCode (NOT_DETECTED_SNOMED );
450+ assertEquals ("Not detected" , result .name ());
451+
452+ result = Translators .getSnomedConceptByCode (INVALID_SNOMED );
453+ assertEquals ("Invalid result" , result .name ());
454+
455+ result = Translators .getSnomedConceptByCode ("42425007" );
456+ assertEquals ("Equivocal" , result .name ());
457+
458+ result = Translators .getSnomedConceptByCode ("720735008" );
459+ assertEquals ("Presumptive positive" , result .name ());
460+ }
461+
454462 static class GoodNameArgumentsProvider implements ArgumentsProvider {
455463
456464 @ Override
0 commit comments