def METHOD_NAME(self):
    # table should be empty before we start
    self.assertEqual(0, Election.private_objects.count())
    # From a performance perspective, saving a ballot and 2 parent groups
    # is the worst-case scenario for database I/O
    # we should monitor this and be aware if this number increases
    with self.assertNumQueries(19):
        self.ballot.save()
    # saving the child record should implicitly save the parent records too
    self.assertEqual(3, Election.private_objects.count())