Mercurial > hg > orthanc-tests
changeset 815:1aa6cfc19cc8
delete cascade multiple instances
author | Alain Mazy <am@orthanc.team> |
---|---|
date | Tue, 20 May 2025 10:53:53 +0200 (2 weeks ago) |
parents | 11068aac2270 |
children | b359461f750d 276a054d7c32 |
files | Tests/Tests.py |
diffstat | 1 files changed, 26 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/Tests/Tests.py Mon May 12 11:41:02 2025 +0200 +++ b/Tests/Tests.py Tue May 20 10:53:53 2025 +0200 @@ -538,6 +538,32 @@ self.assertEqual(0, len(DoGet(_REMOTE, '/patients'))) + def test_delete_cascade_with_multiple_instances(self): + # make sure deleting the last instance of a study deletes the series, study and patient + + self.assertEqual(0, len(DoGet(_REMOTE, '/instances'))) # make sure orthanc is empty when starting the test + a = UploadInstance(_REMOTE, 'Knix/Loc/IM-0001-0001.dcm') + b = UploadInstance(_REMOTE, 'Knix/Loc/IM-0001-0002.dcm') + + self.assertEqual(2, len(DoGet(_REMOTE, '/instances'))) + self.assertEqual(1, len(DoGet(_REMOTE, '/series'))) + self.assertEqual(1, len(DoGet(_REMOTE, '/studies'))) + self.assertEqual(1, len(DoGet(_REMOTE, '/patients'))) + + DoDelete(_REMOTE, '/instances/%s' % b['ID']) + + self.assertEqual(1, len(DoGet(_REMOTE, '/instances'))) + self.assertEqual(1, len(DoGet(_REMOTE, '/series'))) + self.assertEqual(1, len(DoGet(_REMOTE, '/studies'))) + self.assertEqual(1, len(DoGet(_REMOTE, '/patients'))) + + DoDelete(_REMOTE, '/instances/%s' % a['ID']) + + self.assertEqual(0, len(DoGet(_REMOTE, '/instances'))) + self.assertEqual(0, len(DoGet(_REMOTE, '/series'))) + self.assertEqual(0, len(DoGet(_REMOTE, '/studies'))) + self.assertEqual(0, len(DoGet(_REMOTE, '/patients'))) + def test_multiframe(self): i = UploadInstance(_REMOTE, 'Multiframe.dcm')['ID'] self.assertEqual(76, len(DoGet(_REMOTE, '/instances/%s/frames' % i)))