module RSpec::Core::SharedExampleGroup::Registry

def add_group(*args, &block)

def add_group(*args, &block)
  ensure_block_has_source_location(block, caller[1])
  if key? args.first
    key = args.shift
    warn_if_key_taken key, block
    RSpec.world.shared_example_groups[key] = block
  end
  unless args.empty?
    mod = Module.new
    (class << mod; self; end).send :define_method, :extended  do |host|
      host.class_eval(&block)
    end
    RSpec.configuration.extend mod, *args
  end
end