Writing test cases
Now let's expand the test_populate_tasks()
method seen in our initial skeleton. The simplest tests we can write, run some code from the tested object, query for a result to verify, and then use an assert to compare with an expected result.
The test_populate_tasks()
method will test the do_populate_tasks()
Todo method. Since our setup made sure we have two open Todos, after running it we expect the wizard task_ids
to be referencing these two records.
# class TestWizard(TransactionCase): def test_populate_tasks(self): "Populate tasks buttons should add two tasks" self.wizard.do_populate_tasks() count = len(self.wizard.task_ids) self.assertEqual(count, 2, 'Wrong number of populated tasks')
The docstring, at the first line of the method definition, is useful to describe the test and is printed out when running it.
The check verifying if the test succeeded or failed is the self.assertEqual
statement...