Mercurial > hg > orthanc
comparison OrthancFramework/UnitTestsSources/FromDcmtkTests.cpp @ 4693:45bce660ce3a
added routes for bulk anonymization/modification
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 16 Jun 2021 16:44:04 +0200 |
parents | ead3b81f4541 |
children | dd6274412ff4 |
comparison
equal
deleted
inserted
replaced
4692:e68edf92e5cc | 4693:45bce660ce3a |
---|---|
2428 Json::Value b = Json::arrayValue; | 2428 Json::Value b = Json::arrayValue; |
2429 | 2429 |
2430 { | 2430 { |
2431 Json::Value c = Json::objectValue; | 2431 Json::Value c = Json::objectValue; |
2432 c["CodeValue"] = "122403"; | 2432 c["CodeValue"] = "122403"; |
2433 c["0010,0010"] = "WORLD"; // Patient name | 2433 c["0008,103e"] = "WORLD"; // Series description |
2434 b.append(c); | 2434 b.append(c); |
2435 } | 2435 } |
2436 | 2436 |
2437 item["PurposeOfReferenceCodeSequence"] = b; | 2437 item["PurposeOfReferenceCodeSequence"] = b; |
2438 } | 2438 } |
2444 } | 2444 } |
2445 | 2445 |
2446 static const char* CODE_VALUE = "0008,0100"; | 2446 static const char* CODE_VALUE = "0008,0100"; |
2447 static const char* PATIENT_ID = "0010,0020"; | 2447 static const char* PATIENT_ID = "0010,0020"; |
2448 static const char* PATIENT_NAME = "0010,0010"; | 2448 static const char* PATIENT_NAME = "0010,0010"; |
2449 static const char* SERIES_DESCRIPTION = "0008,103e"; | |
2449 static const char* PURPOSE_CODE_SEQ = "0040,a170"; | 2450 static const char* PURPOSE_CODE_SEQ = "0040,a170"; |
2450 static const char* REF_IM_SEQ = "0008,1140"; | 2451 static const char* REF_IM_SEQ = "0008,1140"; |
2451 static const char* REF_SOP_CLASS = "0008,1150"; | 2452 static const char* REF_SOP_CLASS = "0008,1150"; |
2452 static const char* REF_SOP_INSTANCE = "0008,1155"; | 2453 static const char* REF_SOP_INSTANCE = "0008,1155"; |
2453 static const char* REL_SERIES_SEQ = "0008,1250"; | 2454 static const char* REL_SERIES_SEQ = "0008,1250"; |
2523 dicom->RemovePath(DicomPath::Parse("RelatedSeriesSequence[0].PurposeOfReferenceCodeSequence[0].CodeValue")); | 2524 dicom->RemovePath(DicomPath::Parse("RelatedSeriesSequence[0].PurposeOfReferenceCodeSequence[0].CodeValue")); |
2524 | 2525 |
2525 Json::Value vv; | 2526 Json::Value vv; |
2526 dicom->DatasetToJson(vv, DicomToJsonFormat_Short, DicomToJsonFlags_None, 0); | 2527 dicom->DatasetToJson(vv, DicomToJsonFormat_Short, DicomToJsonFlags_None, 0); |
2527 | 2528 |
2528 ASSERT_EQ("WORLD", vv[REL_SERIES_SEQ][0][PURPOSE_CODE_SEQ][0][PATIENT_NAME].asString()); | 2529 ASSERT_EQ("WORLD", vv[REL_SERIES_SEQ][0][PURPOSE_CODE_SEQ][0][SERIES_DESCRIPTION].asString()); |
2529 ASSERT_FALSE(vv[REL_SERIES_SEQ][0][PURPOSE_CODE_SEQ][0].isMember(CODE_VALUE)); | 2530 ASSERT_FALSE(vv[REL_SERIES_SEQ][0][PURPOSE_CODE_SEQ][0].isMember(CODE_VALUE)); |
2530 } | 2531 } |
2531 | 2532 |
2532 { | 2533 { |
2533 std::unique_ptr<ParsedDicomFile> dicom(ParsedDicomFile::CreateFromJson(v, DicomFromJsonFlags_None, "")); | 2534 std::unique_ptr<ParsedDicomFile> dicom(ParsedDicomFile::CreateFromJson(v, DicomFromJsonFlags_None, "")); |
2683 ASSERT_TRUE(Toolbox::IsUuid(vv1[PATIENT_NAME].asString())); | 2684 ASSERT_TRUE(Toolbox::IsUuid(vv1[PATIENT_NAME].asString())); |
2684 ASSERT_EQ("1.2.840.10008.5.1.4.1.1.4", vv1[REF_IM_SEQ][0][REF_SOP_CLASS].asString()); | 2685 ASSERT_EQ("1.2.840.10008.5.1.4.1.1.4", vv1[REF_IM_SEQ][0][REF_SOP_CLASS].asString()); |
2685 ASSERT_NE("1.2.840.113619.2.176.2025.1499492.7040.1171286241.719", vv1[REF_IM_SEQ][0][REF_SOP_INSTANCE].asString()); | 2686 ASSERT_NE("1.2.840.113619.2.176.2025.1499492.7040.1171286241.719", vv1[REF_IM_SEQ][0][REF_SOP_INSTANCE].asString()); |
2686 ASSERT_NE("1.2.840.113619.2.176.2025.1499492.7040.1171286241.726", vv1[REF_IM_SEQ][1][REF_SOP_INSTANCE].asString()); | 2687 ASSERT_NE("1.2.840.113619.2.176.2025.1499492.7040.1171286241.726", vv1[REF_IM_SEQ][1][REF_SOP_INSTANCE].asString()); |
2687 ASSERT_NE("1.2.840.113704.1.111.7016.1342451220.40", vv1[REL_SERIES_SEQ][0][STUDY_INSTANCE_UID].asString()); | 2688 ASSERT_NE("1.2.840.113704.1.111.7016.1342451220.40", vv1[REL_SERIES_SEQ][0][STUDY_INSTANCE_UID].asString()); |
2688 ASSERT_EQ("WORLD", vv1[REL_SERIES_SEQ][0][PURPOSE_CODE_SEQ][0][PATIENT_NAME].asString()); | 2689 ASSERT_EQ("WORLD", vv1[REL_SERIES_SEQ][0][PURPOSE_CODE_SEQ][0][SERIES_DESCRIPTION].asString()); |
2689 } | 2690 } |
2690 | 2691 |
2691 { | 2692 { |
2692 std::unique_ptr<ParsedDicomFile> dicom(ParsedDicomFile::CreateFromJson(v, DicomFromJsonFlags_None, "")); | 2693 std::unique_ptr<ParsedDicomFile> dicom(ParsedDicomFile::CreateFromJson(v, DicomFromJsonFlags_None, "")); |
2693 | 2694 |