Exemplo n.º 1
0
 def test_task(self):
     """Check that task works correctly."""
     task = Task("foo", self._set_var_5, ("anaconda", ))
     assert task.name == "foo"
     assert task.summary == "Task: foo"
     assert task.parent is None
     assert task.elapsed_time is None
     # check initial state of the testing variables
     assert self._test_variable4 is None
     assert self._test_variable5 is None
     assert self._test_variable6 is None
     # check task state
     assert not task.done
     assert not task.running
     # connect callbacks
     task.started.connect(self._set_var_4)
     task.completed.connect(self._set_var_6)
     # check if the task is executed correctly
     task.start()
     assert task.done
     assert not task.running
     assert self._test_variable5 == "anaconda"
     assert self._test_variable4 is task
     assert self._test_variable6 is task
     # it should be possible to execute the task only once
     task.start()
     assert task.done
     assert not task.running
     assert task.elapsed_time is not None
     assert self._test_variable5 == "anaconda"
     assert self._test_variable4 is task
     assert self._test_variable6 is task
    def test_task_with_args_and_kwargs(self):
        """Check that works correctly with args and kwargs."""
        def custom_function(arg1, foo=None):
            self._set_var_5((arg1, foo))

        task = Task("foo", custom_function, task_args=("anaconda",), task_kwargs={"foo": "bar"})
        assert task.name == "foo"
        assert task.summary == "Task: foo"
        assert task._parent is None
        assert task.elapsed_time is None

        # check initial state of the testing variables
        assert self._test_variable4 is None
        assert self._test_variable5 is None
        assert self._test_variable6 is None

        # connect callbacks
        task.started.connect(self._set_var_4)
        task.completed.connect(self._set_var_6)

        # check if the task is executed correctly
        task.start()

        assert self._test_variable5 == ("anaconda", "bar")
        assert self._test_variable4 is task
        assert self._test_variable6 is task
 def task_test(self):
     """Check that task works correctly."""
     task = Task("foo", self._set_var_5, ("anaconda", ))
     self.assertEqual(task.name, "foo")
     self.assertEqual(task.summary, "Task: foo")
     self.assertIsNone(task.parent)
     self.assertIsNone(task.elapsed_time)
     # check initial state of the testing variables
     self.assertIsNone(self._test_variable4)
     self.assertIsNone(self._test_variable5)
     self.assertIsNone(self._test_variable6)
     # check task state
     self.assertFalse(task.done)
     self.assertFalse(task.running)
     # connect callbacks
     task.started.connect(self._set_var_4)
     task.completed.connect(self._set_var_6)
     # check if the task is executed correctly
     task.start()
     self.assertTrue(task.done)
     self.assertFalse(task.running)
     self.assertEqual(self._test_variable5, "anaconda")
     self.assertIs(self._test_variable4, task)
     self.assertIs(self._test_variable6, task)
     # it should be possible to execute the task only once
     task.start()
     self.assertTrue(task.done)
     self.assertFalse(task.running)
     self.assertIsNotNone(task.elapsed_time)
     self.assertEqual(self._test_variable5, "anaconda")
     self.assertIs(self._test_variable4, task)
     self.assertIs(self._test_variable6, task)
    def task_kwargs_test(self):
        """Check that works correctly with kwargs."""
        def custom_function(arg1, foo=None):
            self._set_var_5((arg1, foo))

        task = Task("foo",
                    custom_function,
                    task_args=("anaconda", ),
                    task_kwargs={"foo": "bar"})
        self.assertEqual(task.name, "foo")
        self.assertEqual(task.summary, "Task: foo")
        self.assertIsNone(task.parent)
        self.assertIsNone(task.elapsed_time)
        # check initial state of the testing variables
        self.assertIsNone(self._test_variable4)
        self.assertIsNone(self._test_variable5)
        self.assertIsNone(self._test_variable6)
        # check task state
        self.assertFalse(task.done)
        self.assertFalse(task.running)
        # connect callbacks
        task.started.connect(self._set_var_4)
        task.completed.connect(self._set_var_6)
        # check if the task is executed correctly
        task.start()
        self.assertTrue(task.done)
        self.assertFalse(task.running)
        self.assertEqual(self._test_variable5, ("anaconda", "bar"))
        self.assertIs(self._test_variable4, task)
        self.assertIs(self._test_variable6, task)
        # it should be possible to execute the task only once
        task.start()
        self.assertTrue(task.done)
        self.assertFalse(task.running)
        self.assertIsNotNone(task.elapsed_time)
        self.assertEqual(self._test_variable5, ("anaconda", "bar"))
        self.assertIs(self._test_variable4, task)
        self.assertIs(self._test_variable6, task)
    def test_task_with_no_args(self):
        """Check if task with no arguments works correctly."""
        task = Task("foo", self._increment_var1)
        assert task.name == "foo"
        assert task.summary == "Task: foo"
        assert task._parent is None
        assert task.elapsed_time is None

        # check initial state of the testing variables
        assert self._test_variable1 == 0
        assert self._test_variable4 is None
        assert self._test_variable5 is None
        assert self._test_variable6 is None

        # connect callbacks
        task.started.connect(self._set_var_4)
        task.completed.connect(self._set_var_6)

        # check if the task is executed correctly
        task.start()

        assert self._test_variable1 == 1
        assert self._test_variable4 is task
        assert self._test_variable6 is task