def test_renaming(self): """Test renaming the task. """ subtask1 = CheckTask(name='check', database_entries={'val': 1}) self.task.task = subtask1 assert subtask1.get_from_database('Test_val') == 1 self.task.name = 'Test2' assert subtask1.get_from_database('Test2_val') == 1 assert self.task.get_from_database('Test2_point_number') == 11
def test_subtask_handling(self): """Test adding, changing, removing the subtask. """ subtask1 = CheckTask(name='check', database_entries={'val': 1}) self.task.task = subtask1 assert subtask1.root is self.root assert subtask1.database is self.root.database assert subtask1.parent is self.task assert subtask1.path and subtask1.depth assert 'value' not in self.task.database_entries assert subtask1.get_from_database('Test_val') assert self.task.preferences['task']['name'] == 'Test' subtask2 = CheckTask(name='rep', database_entries={'new': 1}) self.task.task = subtask2 assert not subtask1.root assert not subtask1.parent with pytest.raises(KeyError): subtask1.get_from_database('Test_val') assert subtask2.root is self.root assert subtask2.database is self.root.database assert subtask2.parent is self.task assert subtask2.path and subtask1.depth assert 'value' not in self.task.database_entries assert subtask2.get_from_database('Test_new') assert self.task.preferences['task']['name'] == 'Test' self.task.name += '2' assert subtask2.name == self.task.name self.task.task = None assert not subtask2.root assert not subtask2.parent with pytest.raises(KeyError): subtask2.get_from_database('Test2_new') assert 'value' in self.task.database_entries # check that we handle properly the case of no subtask self.task.name += '2'