module Spec::Example::SharedExampleGroup::ClassMethods
def already_registered?(new_example_group)
def already_registered?(new_example_group) existing_example_group = find(new_example_group.description) return false unless existing_example_group return true if new_example_group.equal?(existing_example_group) return true if expanded_path(new_example_group) == expanded_path(existing_example_group) raise ArgumentError.new("Shared Example '#{existing_example_group.description}' already exists") end
def clear
def clear shared_example_groups.clear end
def count
def count shared_example_groups.length end
def expanded_path(example_group)
def expanded_path(example_group) File.expand_path(example_group.location) end
def find(example_group_description)
def find(example_group_description) shared_example_groups.find {|b| b.description == example_group_description} end
def include?(group)
def include?(group) shared_example_groups.include?(group) end
def register(*args, &block)
def register(*args, &block) new_example_group = new(*args, &block) shared_example_groups << new_example_group unless already_registered?(new_example_group) new_example_group end
def shared_example_groups
def shared_example_groups @shared_example_groups ||= [] end