def test_default(self):
        calculation = Calculation()

        self.assertEqual(calculation._calculation_process_type, CalculationProcess)
        self.assertEqual(calculation.process_list, [])

        calculations = Calculation([1, 2, 3])
        self.assertEqual(calculations.process_list, [1, 2, 3])
    def test_iter(self):
        calculations = Calculation([0, 1, 2])

        for i, calc in enumerate(calculations):
            self.assertEqual(calc.process_list, [i])

        self.assertEqual(len(calculations), 3)
    def create_calculations(self):
        process1 = CalculationProcess(CalculationQueue(), None, None)
        process2 = CalculationProcess(CalculationQueue(), None, None)
        process3 = CalculationProcess(CalculationQueue(), None, None)

        calculations = Calculation([process1, process2, process3])

        return calculations, process2