# HG changeset patch # User Alain Mazy # Date 1638264827 -3600 # Node ID af57603438b379c9391e56373bb7b5a081abfc82 # Parent 21a45ddc9256b6e378b03a2e76f85ddf42869611 added tests for patient names with square brackets diff -r 21a45ddc9256 -r af57603438b3 Tests/Tests.py --- a/Tests/Tests.py Sat Nov 27 12:26:43 2021 +0100 +++ b/Tests/Tests.py Tue Nov 30 10:33:47 2021 +0100 @@ -8314,3 +8314,64 @@ self.assertEqual((512, 512, 1), c.shape) self.assertEqual(-2000, c.min()) self.assertEqual(3398, c.max()) + + + def test_find_patient_name_with_brackets_and_star(self): + u = UploadInstance(_REMOTE, 'Beaufix/IM-0001-0001.dcm')['ID'] + + modified = DoPost(_REMOTE, '/instances/%s/modify' % u, json.dumps({ + "Replace" : { + "PatientName" : "MyName[*]", + "PatientID": "test_brackets" + }, + "Force": True + }), + 'application/json') + + m = DoPost(_REMOTE, '/instances', modified, 'application/dicom')['ID'] + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Series', + 'Query' : { 'PatientName' : 'MyName[*]' }}) + self.assertEqual(1, len(a)) + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Patient', + 'Query' : { 'PatientName' : 'MyName[*]' }}) + self.assertEqual(1, len(a)) + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Study', + 'Query' : { 'PatientName' : 'MyName*' }}) + self.assertEqual(1, len(a)) + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Patient', + 'Query' : { 'PatientName' : 'MyName*' }}) + self.assertEqual(1, len(a)) + + def test_find_patient_name_with_brackets_only(self): + u = UploadInstance(_REMOTE, 'Beaufix/IM-0001-0001.dcm')['ID'] + + modified = DoPost(_REMOTE, '/instances/%s/modify' % u, json.dumps({ + "Replace" : { + "PatientName" : "MyName2[]", + "PatientID": "test_brackets2" + }, + "Force": True + }), + 'application/json') + + m = DoPost(_REMOTE, '/instances', modified, 'application/dicom')['ID'] + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Series', + 'Query' : { 'PatientName' : 'MyName2[*]' }}) + self.assertEqual(1, len(a)) + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Patient', + 'Query' : { 'PatientName' : 'MyName2[*]' }}) + self.assertEqual(1, len(a)) + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Study', + 'Query' : { 'PatientName' : 'MyName2*' }}) + self.assertEqual(1, len(a)) + + a = DoPost(_REMOTE, '/tools/find', { 'Level' : 'Patient', + 'Query' : { 'PatientName' : 'MyName2*' }}) + self.assertEqual(1, len(a))