module RSpec::Core::Hooks
def find_hook(hook, scope, example_group_class, example = nil)
def find_hook(hook, scope, example_group_class, example = nil) found_hooks = hooks[hook][scope].find_hooks_for(example || example_group_class) # ensure we don't re-run :all hooks that were applied to any of the parent groups if scope == :all super_klass = example_group_class.superclass while super_klass != RSpec::Core::ExampleGroup found_hooks = found_hooks.without_hooks_for(super_klass) super_klass = super_klass.superclass end end found_hooks end