def METHOD_NAME(self):
    assert list(
        traverse_topologically(
            start_node='b1',
            get_children=(lambda node: self.parent_to_children_map[node]),
            get_parents=(lambda node: self.child_to_parents_map[node]),
            filter_func=(lambda node: (node != 'd2')),
            yield_descendants_of_unyielded=True)
    ) == ['b1', 'c1', 'd1', 'e1', 'e2', 'f1', 'c2', 'd3']