def process(self): self._max_qtasks = 0 self._current_progress = 0 result = [] for item in self._wrangletasklist: frange = str(item.text(2)) fids = Frange(input_range=frange) self._max_qtasks += len(fids.frames) self.setNumberOfQTasks.emit(self._max_qtasks) self.updateProgress.emit(self._current_progress) for item in self._wrangletasklist: self._mutex.lock() flag = self._abort self._mutex.unlock() if flag: break taskid = str(item.text(5)) frange = str(item.text(2)) fids = Frange(input_range=frange) frameList = fids.frames dl = DPADataLibrary.DjangoLibrary(BaseQName) for frame in frameList: tid = taskid + "_" + DpaPipeFormattedFrame( frame ) entry = ["~", "~", "~", "~", "~", "~"] entry[0] = tid task = dl.get(tid) entry[1] = task.queueName entry[2] = task.queueStatus entry[3] = task.queueMachine entry[4] = task.queueStartTime entry[5] = task.queueElapsedTime if task.queueStatus == "archived": entry[2] = "done" elif task.queueStatus == "open": entry[2] = "waiting" else: if task.queueStartTime != "" and task.queueEndTime == "": entry[5] = DpaPipeElapsedUnspacedTime( task.queueStartTime, DpaPipeFormattedUnspacedTime() ) # if task.queueStartTime != "" and task.queueEndTime != "": # entry[5] = DpaPipeElapsedUnspacedTime( task.queueStartTime, task.queueEndTime ) result.append(entry) self._current_progress += 1 self.updateProgress.emit(self._current_progress) self._mutex.lock() self._working = False self._mutex.unlock() self.jobComplete.emit(result) self.finished.emit() # End of QTaskListWorker class
def verify(self): ver_range = Frange() ver_range.add([v.number for v in self.versions]) versions_disp = str(ver_range) ptask_field = "PTask" versions_field = "Version(s)" output = Output() output.header_names = [ ptask_field, versions_field, ] output.add_item( { ptask_field: self.ptask.spec, versions_field: versions_disp, }, color_all=Style.bright, ) if self.force: output.title = "Syncing: " else: output.title = "Confirm sync:" output.dump() if not self.force: if not Output.prompt_yes_no(Style.bright + "Sync" + Style.reset): raise ActionAborted("Sync aborted by user.")
def setUp(self): """Get a new location object for each test.""" self.f1 = Frange() self.f2 = Frange("1") self.f3 = Frange("-1, 0, 1") self.f4 = Frange("-5-5") self.f5 = Frange("-10-10:2") self.f6 = Frange("10-20:3, 1, 4-7") self.f7 = Frange(["4, 7", "10-20:3", "1"])
def qtaskList(taskid, frange): fids = Frange(input_range=frange) frameList = fids.frames dl = DPADataLibrary.DjangoLibrary(BaseQName) ret = [] for frame in frameList: tid = taskid + "_" + str(frame).zfill(4) entry = ["~", "~", "~", "~", "~", "~"] entry[0] = tid task = dl.get(tid) entry[1] = task.queueName entry[2] = task.queueStatus if task.queueStatus == "archived": entry[2] = "done" if task.queueStatus == "open": entry[2] = "waiting" entry[3] = task.queueMachine entry[4] = task.queueStartTime entry[5] = task.queueElapsedTime if task.queueStartTime != "" and task.queueEndTime == "": entry[5] = DpaPipeElapsedUnspacedTime( task.queueStartTime, DpaPipeFormattedUnspacedTime()) if task.queueStartTime != "" and task.queueEndTime != "": entry[5] = DpaPipeElapsedUnspacedTime(task.queueStartTime, task.queueEndTime) ret.append(entry) return ret
def _get_frange_from_controls(self): # auto frame range if self._frange_stack.currentIndex() == 0: frange_str = str(self._frame_start.value()) + "-" + \ str(self._frame_end.value()) + ":" + \ str(self._frame_step.value()) # manual frame range else: frange_str = self._manual_frange.text() try: frange = Frange(frange_str) except FrangeError: self._show_error( "Unable to determine frame range from: " + frange_str) return None return frange
class FrangeInstanceTestCase(unittest.TestCase): """Frange class method tests.""" # ------------------------------------------------------------------------- # setup/teardown: # ------------------------------------------------------------------------- def setUp(self): """Get a new location object for each test.""" self.f1 = Frange() self.f2 = Frange("1") self.f3 = Frange("-1, 0, 1") self.f4 = Frange("-5-5") self.f5 = Frange("-10-10:2") self.f6 = Frange("10-20:3, 1, 4-7") self.f7 = Frange(["4, 7", "10-20:3", "1"]) # ------------------------------------------------------------------------- def tearDown(self): """Clean up the location instance after each test method.""" del self.f1 del self.f2 del self.f3 del self.f4 del self.f5 del self.f6 del self.f7 # ------------------------------------------------------------------------- # Tests: # ------------------------------------------------------------------------- def test_method_add(self): """Add specified frames to the range""" self.f1.add("1-5") for i in range(1, 6): self.assertTrue(i in self.f1.frames) self.f1.add("10-20:2") for i in range(1, 6) and range(10, 21, 2): self.assertTrue(i in self.f1.frames) self.f1.add("30, 32, 34-36") for i in range(1, 6) and range(10, 21, 2) and range(30, 37, 2): self.assertTrue(i in self.f1.frames) self.f1.add(["40-50, 60"]) for i in [range(1, 6) and range(10, 21, 2) and range(30, 35, 2) and range(40, 51) and 60]: self.assertTrue(i in self.f1.frames) self.assertRaises(FrangeError, self.f1.add("4, 7-")) def test_method_remove(self): """Remove specified frames to the range""" self.f7.remove("1") for i in [1]: self.assertFalse(i in self.f7.frames) self.f7.remove("10-15:3") for i in range(10, 15, 3): self.assertFalse(i in self.f7.frames) self.f7.remove("16, 19-20") for i in [16 and range(19, 21)]: self.assertFalse(i in self.f7.frames) self.f7.remove(["4, 7"]) for i in [4, 7]: self.assertFalse(i in self.f7.frames) self.assertRaises(FrangeError, self.f7.remove("4, 7-")) def test_property_start(self): """Frange 'start' property is int and read only""" start = self.f1.start self.assertEqual(start, None) start = self.f2.start self.assertIsInstance(start, int) self.assertEqual(start, 1) start = self.f3.start self.assertIsInstance(start, int) self.assertEqual(start, -1) start = self.f4.start self.assertIsInstance(start, int) self.assertEqual(start, -5) start = self.f5.start self.assertIsInstance(start, int) self.assertEqual(start, -10) start = self.f6.start self.assertIsInstance(start, int) self.assertEqual(start, 1) start = self.f7.start self.assertIsInstance(start, int) self.assertEqual(start, 1) def test_property_end(self): """Frange 'end' property is int and read only""" end = self.f1.end self.assertEqual(end, None) end = self.f2.end self.assertIsInstance(end, int) self.assertEqual(end, 1) end = self.f3.end self.assertIsInstance(end, int) self.assertEqual(end, 1) end = self.f4.end self.assertIsInstance(end, int) self.assertEqual(end, 5) end = self.f5.end self.assertIsInstance(end, int) self.assertEqual(end, 10) end = self.f6.end self.assertIsInstance(end, int) self.assertEqual(end, 19) end = self.f7.end self.assertIsInstance(end, int) self.assertEqual(end, 19) def test_property_first(self): """Frange 'first' property is int and read only""" first = self.f1.first self.assertEqual(first, None) first = self.f2.first self.assertIsInstance(first, int) self.assertEqual(first, 1) first = self.f3.first self.assertIsInstance(first, int) self.assertEqual(first, -1) first = self.f4.first self.assertIsInstance(first, int) self.assertEqual(first, -5) first = self.f5.first self.assertIsInstance(first, int) self.assertEqual(first, -10) first = self.f6.first self.assertIsInstance(first, int) self.assertEqual(first, 10) first = self.f7.first self.assertIsInstance(first, int) self.assertEqual(first, 4) def test_property_last(self): """Frange 'last' property is int and read only""" last = self.f1.last self.assertEqual(last, None) last = self.f2.last self.assertIsInstance(last, int) self.assertEqual(last, 1) last = self.f3.last self.assertIsInstance(last, int) self.assertEqual(last, 1) last = self.f4.last self.assertIsInstance(last, int) self.assertEqual(last, 5) last = self.f5.last self.assertIsInstance(last, int) self.assertEqual(last, 10) last = self.f6.last self.assertIsInstance(last, int) self.assertEqual(last, 7) last = self.f7.last self.assertIsInstance(last, int) self.assertEqual(last, 1) def test_property_step(self): """Frange 'step' property is int and read only""" step = self.f1.step self.assertEqual(step, None) step = self.f2.step self.assertIsInstance(step, int) self.assertEqual(step, 1) step = self.f3.step self.assertIsInstance(step, int) self.assertEqual(step, 1) step = self.f4.step self.assertIsInstance(step, int) self.assertEqual(step, 1) step = self.f5.step self.assertIsInstance(step, int) self.assertEqual(step, 2) step = self.f6.step self.assertEqual(step, None) step = self.f7.step self.assertIsInstance(step, int) self.assertEqual(step, 3) def test_property_count(self): """Frange 'count' property is int and read only""" count = self.f1.count self.assertIsInstance(count, int) self.assertEqual(count, 0) count = self.f2.count self.assertIsInstance(count, int) self.assertEqual(count, 1) count = self.f3.count self.assertIsInstance(count, int) self.assertEqual(count, 3) count = self.f4.count self.assertIsInstance(count, int) self.assertEqual(count, 11) count = self.f5.count self.assertIsInstance(count, int) self.assertEqual(count, 11) count = self.f6.count self.assertIsInstance(count, int) self.assertEqual(count, 9) count = self.f7.count self.assertIsInstance(count, int) self.assertEqual(count, 7)
class FrangeInstanceTestCase(unittest.TestCase): """Frange class method tests.""" # ------------------------------------------------------------------------- # setup/teardown: # ------------------------------------------------------------------------- def setUp(self): """Get a new location object for each test.""" self.f1 = Frange() self.f2 = Frange("1") self.f3 = Frange("-1, 0, 1") self.f4 = Frange("-5-5") self.f5 = Frange("-10-10:2") self.f6 = Frange("10-20:3, 1, 4-7") self.f7 = Frange(["4, 7", "10-20:3", "1"]) # ------------------------------------------------------------------------- def tearDown(self): """Clean up the location instance after each test method.""" del self.f1 del self.f2 del self.f3 del self.f4 del self.f5 del self.f6 del self.f7 # ------------------------------------------------------------------------- # Tests: # ------------------------------------------------------------------------- def test_method_add(self): """Add specified frames to the range""" self.f1.add("1-5") for i in range(1, 6): self.assertTrue(i in self.f1.frames) self.f1.add("10-20:2") for i in range(1, 6) and range(10, 21, 2): self.assertTrue(i in self.f1.frames) self.f1.add("30, 32, 34-36") for i in range(1, 6) and range(10, 21, 2) and range(30, 37, 2): self.assertTrue(i in self.f1.frames) self.f1.add(["40-50, 60"]) for i in [ range(1, 6) and range(10, 21, 2) and range(30, 35, 2) and range(40, 51) and 60 ]: self.assertTrue(i in self.f1.frames) self.assertRaises(FrangeError, self.f1.add("4, 7-")) def test_method_remove(self): """Remove specified frames to the range""" self.f7.remove("1") for i in [1]: self.assertFalse(i in self.f7.frames) self.f7.remove("10-15:3") for i in range(10, 15, 3): self.assertFalse(i in self.f7.frames) self.f7.remove("16, 19-20") for i in [16 and range(19, 21)]: self.assertFalse(i in self.f7.frames) self.f7.remove(["4, 7"]) for i in [4, 7]: self.assertFalse(i in self.f7.frames) self.assertRaises(FrangeError, self.f7.remove("4, 7-")) def test_property_start(self): """Frange 'start' property is int and read only""" start = self.f1.start self.assertEqual(start, None) start = self.f2.start self.assertIsInstance(start, int) self.assertEqual(start, 1) start = self.f3.start self.assertIsInstance(start, int) self.assertEqual(start, -1) start = self.f4.start self.assertIsInstance(start, int) self.assertEqual(start, -5) start = self.f5.start self.assertIsInstance(start, int) self.assertEqual(start, -10) start = self.f6.start self.assertIsInstance(start, int) self.assertEqual(start, 1) start = self.f7.start self.assertIsInstance(start, int) self.assertEqual(start, 1) def test_property_end(self): """Frange 'end' property is int and read only""" end = self.f1.end self.assertEqual(end, None) end = self.f2.end self.assertIsInstance(end, int) self.assertEqual(end, 1) end = self.f3.end self.assertIsInstance(end, int) self.assertEqual(end, 1) end = self.f4.end self.assertIsInstance(end, int) self.assertEqual(end, 5) end = self.f5.end self.assertIsInstance(end, int) self.assertEqual(end, 10) end = self.f6.end self.assertIsInstance(end, int) self.assertEqual(end, 19) end = self.f7.end self.assertIsInstance(end, int) self.assertEqual(end, 19) def test_property_first(self): """Frange 'first' property is int and read only""" first = self.f1.first self.assertEqual(first, None) first = self.f2.first self.assertIsInstance(first, int) self.assertEqual(first, 1) first = self.f3.first self.assertIsInstance(first, int) self.assertEqual(first, -1) first = self.f4.first self.assertIsInstance(first, int) self.assertEqual(first, -5) first = self.f5.first self.assertIsInstance(first, int) self.assertEqual(first, -10) first = self.f6.first self.assertIsInstance(first, int) self.assertEqual(first, 10) first = self.f7.first self.assertIsInstance(first, int) self.assertEqual(first, 4) def test_property_last(self): """Frange 'last' property is int and read only""" last = self.f1.last self.assertEqual(last, None) last = self.f2.last self.assertIsInstance(last, int) self.assertEqual(last, 1) last = self.f3.last self.assertIsInstance(last, int) self.assertEqual(last, 1) last = self.f4.last self.assertIsInstance(last, int) self.assertEqual(last, 5) last = self.f5.last self.assertIsInstance(last, int) self.assertEqual(last, 10) last = self.f6.last self.assertIsInstance(last, int) self.assertEqual(last, 7) last = self.f7.last self.assertIsInstance(last, int) self.assertEqual(last, 1) def test_property_step(self): """Frange 'step' property is int and read only""" step = self.f1.step self.assertEqual(step, None) step = self.f2.step self.assertIsInstance(step, int) self.assertEqual(step, 1) step = self.f3.step self.assertIsInstance(step, int) self.assertEqual(step, 1) step = self.f4.step self.assertIsInstance(step, int) self.assertEqual(step, 1) step = self.f5.step self.assertIsInstance(step, int) self.assertEqual(step, 2) step = self.f6.step self.assertEqual(step, None) step = self.f7.step self.assertIsInstance(step, int) self.assertEqual(step, 3) def test_property_count(self): """Frange 'count' property is int and read only""" count = self.f1.count self.assertIsInstance(count, int) self.assertEqual(count, 0) count = self.f2.count self.assertIsInstance(count, int) self.assertEqual(count, 1) count = self.f3.count self.assertIsInstance(count, int) self.assertEqual(count, 3) count = self.f4.count self.assertIsInstance(count, int) self.assertEqual(count, 11) count = self.f5.count self.assertIsInstance(count, int) self.assertEqual(count, 11) count = self.f6.count self.assertIsInstance(count, int) self.assertEqual(count, 9) count = self.f7.count self.assertIsInstance(count, int) self.assertEqual(count, 7)