From: Christian Heller Date: Mon, 17 Jun 2024 12:15:11 +0000 (+0200) Subject: Extend Todo tests to also run ID checking from TestCaseSansDB. X-Git-Url: https://plomlompom.com/repos/%7B%7B%20web_path%20%7D%7D/decks/%7B%7Bprefix%7D%7D/static/blog?a=commitdiff_plain;h=cd8664350b71bc116ea4cd5f4e48712a59dcf3ee;p=plomtask Extend Todo tests to also run ID checking from TestCaseSansDB. --- diff --git a/tests/todos.py b/tests/todos.py index 9317c39..b73f5d7 100644 --- a/tests/todos.py +++ b/tests/todos.py @@ -1,5 +1,5 @@ """Test Todos module.""" -from tests.utils import TestCaseWithDB, TestCaseWithServer +from tests.utils import TestCaseSansDB, TestCaseWithDB, TestCaseWithServer from plomtask.todos import Todo, TodoNode from plomtask.processes import Process, ProcessStep from plomtask.conditions import Condition @@ -7,11 +7,19 @@ from plomtask.exceptions import (NotFoundException, BadFormatException, HandledException) -class TestsWithDB(TestCaseWithDB): - """Tests requiring DB, but not server setup.""" +class TestsWithDB(TestCaseWithDB, TestCaseSansDB): + """Tests requiring DB, but not server setup. + + NB: We subclass TestCaseSansDB too, to pull in its .test_id_setting, which + for Todo wouldn't run without a DB being set up due to the need for + Processes with set IDs. + """ checked_class = Todo default_init_kwargs = {'process': None, 'is_done': False, 'date': '2024-01-01'} + # solely used for TestCaseSansDB.test_id_setting + default_init_args = [None, False, '2024-01-01'] + do_id_test = True def setUp(self) -> None: super().setUp() @@ -24,6 +32,7 @@ class TestsWithDB(TestCaseWithDB): self.cond2 = Condition(None) self.cond2.save(self.db_conn) self.default_init_kwargs['process'] = self.proc + self.default_init_args[0] = self.proc def test_Todo_init(self) -> None: """Test creation of Todo and what they default to."""