comparison Plugins/Worklists/Run.py @ 174:d468cbe1b161

added tests for IncomingWorklistRequestFilter
author am@osimis.io
date Thu, 20 Sep 2018 11:51:34 +0200
parents 50cd127e5330
children af8e034f4262
comparison
equal deleted inserted replaced
173:ed3db6386587 174:d468cbe1b161
183 # Remove annoying warnings about unclosed socket in Python 3 183 # Remove annoying warnings about unclosed socket in Python 3
184 import warnings 184 import warnings
185 warnings.simplefilter("ignore", ResourceWarning) 185 warnings.simplefilter("ignore", ResourceWarning)
186 186
187 ClearDatabase() 187 ClearDatabase()
188 DoPost(ORTHANC, '/tools/execute-script', 'function IncomingWorklistRequestFilter(query, origin) return query end', 'application/lua')
188 189
189 190
190 def test_single(self): 191 def test_single(self):
191 for db in range(1, 11): 192 for db in range(1, 11):
192 ClearDatabase() 193 ClearDatabase()
239 AddToDatabase('Sequences/STATION_AET/orig.7814.dump') 240 AddToDatabase('Sequences/STATION_AET/orig.7814.dump')
240 AddToDatabase('Sequences/STATION_AET/orig.7814.other.station.dump') 241 AddToDatabase('Sequences/STATION_AET/orig.7814.other.station.dump')
241 242
242 self.assertEqual(1, len(RunQuery('Sequences/Queries/7814.without.station.aet.dump', []))) 243 self.assertEqual(1, len(RunQuery('Sequences/Queries/7814.without.station.aet.dump', [])))
243 244
245 def test_filter_issuer_aet_from_lua(self):
246 AddToDatabase('Sequences/STATION_AET/orig.7814.dump') # targeted at STATION_AET
247 AddToDatabase('Sequences/STATION_AET/orig.7814.other.station.dump') # targeted at ORTHANC_TEST
248
249 self.assertEqual(2, len(RunQuery('Sequences/Queries/7814.without.station.aet.dump', []))) # query is not targeting any station -> match all
250 InstallLuaScript(ORTHANC, "\
251 function IncomingWorklistRequestFilter(query, origin)\
252 query['0040,0100'][1]['0040,0001'] = origin['RemoteAet']\
253 return query\
254 end");
255
256 self.assertEqual(1, len(RunQuery('Sequences/Queries/7814.without.station.aet.dump', []))) # now, query is targeting ORTHANCTEST -> match one
257
258
259 def test_remove_aet_from_query(self):
260 AddToDatabase('Sequences/NO_STATION_AET/orig.7814.other.station.dump') # targeted at ORTHANCTEST
261
262 self.assertEqual(0, len(RunQuery('Sequences/Queries/orig.7814.dump', []))) # query is targeting STATION_AET -> will not match
263 InstallLuaScript(ORTHANC, "\
264 function IncomingWorklistRequestFilter(query, origin)\
265 query['0040,0100'][1]['0040,0001'] = nil\
266 return query\
267 end");
268 self.assertEqual(1, len(RunQuery('Sequences/Queries/orig.7814.dump', []))) # query is targeting STATION_AET but, since we have removed this field, we should get 2 queries
244 269
245 def test_encodings(self): 270 def test_encodings(self):
246 # Check out ../../Database/Worklists/Encodings/database.dump 271 # Check out ../../Database/Worklists/Encodings/database.dump
247 TEST = u'Test-éüäöòДΘĝדصķћ๛ネİ' 272 TEST = u'Test-éüäöòДΘĝדصķћ๛ネİ'
248 ENCODINGS = { 273 ENCODINGS = {