'Verifies the results of transforming the blocks in the course.
Arguments:
test_user (User): The non-staff user that is being tested.
For example, self.student.
expected_user_accessible_blocks (set(int)): Set of blocks
(indices) that a student user is expected to have access
to after the transformers are executed.
blocks_with_differing_access (set(int)): Set of
blocks (indices) whose access will differ from the
transformers result and the current implementation of
has_access.  If not provided, does not compare with
has_access results.
transformers (BlockStructureTransformers): An optional collection
of transformers that are to be executed.  If not
provided, the default value used by get_course_blocks
is used.'

def assert_transform_results(self, test_user, expected_user_accessible_blocks, blocks_with_differing_access=None, transformers=None):

    publish_course(self.course)
    self._check_results(test_user, expected_user_accessible_blocks, blocks_with_differing_access, transformers)
    self._check_results(self.staff, set(range(len(self.parents_map))), {}, transformers)
