class Mutiny::Integration::RSpec::Parser
This code originally based on Markus Schirp’s implementation of Mutant::Integration::Rspec
https://github.com/mbj/mutant/blob/master/lib/mutant/integration/rspec.rb
Public Class Methods
new(context = Context.new)
click to toggle source
# File lib/mutiny/integration/rspec/parser.rb, line 10 def initialize(context = Context.new) @world = context.world end
Public Instance Methods
call()
click to toggle source
# File lib/mutiny/integration/rspec/parser.rb, line 14 def call TestSet.new(all_examples.map(&method(:parse_example))) end
Private Instance Methods
all_examples()
click to toggle source
# File lib/mutiny/integration/rspec/parser.rb, line 20 def all_examples @world.example_groups.flat_map(&:descendants).flat_map(&:examples) end
parse_example(example)
click to toggle source
# File lib/mutiny/integration/rspec/parser.rb, line 24 def parse_example(example) metadata = example.metadata location = metadata.fetch(:location) name = metadata.fetch(:full_description) Test.new(location: location, name: name, example: example) end