1 from unittest
import TestCase, main
11 def test_default(self):
12 calculation = Calculation()
14 self.assertEqual(calculation._calculation_process_type, CalculationProcess)
15 self.assertEqual(calculation.process_list, [])
17 calculations = Calculation([1, 2, 3])
18 self.assertEqual(calculations.process_list, [1, 2, 3])
21 calculations = Calculation([0, 1, 2])
23 for i, calc
in enumerate(calculations):
24 self.assertEqual(calc.process_list, [i])
26 self.assertEqual(len(calculations), 3)
28 def test_is_running(self):
29 calculations, process = self.create_calculations()
31 process.is_alive =
lambda:
True
32 self.assertEqual(calculations.is_running(), [
False,
True,
False])
34 def test_is_finished(self):
35 calculations, process = self.create_calculations()
37 process.already_run =
lambda:
True
38 self.assertEqual(calculations.is_finished(), [
False,
True,
False])
40 def test_map_on_process(self):
41 calculations, process = self.create_calculations()
43 process.is_alive =
lambda:
True
45 self.assertEqual(calculations.map_on_processes(
lambda p: p.is_alive(), index=
None), [
False,
True,
False])
46 self.assertEqual(calculations.map_on_processes(
lambda p: p.is_alive(), index=1),
True)
47 self.assertEqual(calculations.map_on_processes(
lambda p: p.is_alive(), index=0),
False)
48 self.assertEqual(calculations.map_on_processes(
lambda p: p.is_alive(), index=process),
True)
50 def create_calculations(self):
51 process1 = CalculationProcess(CalculationQueue(),
None,
None)
52 process2 = CalculationProcess(CalculationQueue(),
None,
None)
53 process3 = CalculationProcess(CalculationQueue(),
None,
None)
55 calculations = Calculation([process1, process2, process3])
57 return calculations, process2
59 if __name__ ==
"__main__":