free_mutant/lib/mutant/meta/example.rb

36 lines
741 B
Ruby
Raw Normal View History

# frozen_string_literal: true
2018-09-12 13:15:43 +00:00
module Mutant
module Meta
class Example
include Adamantium, Anima.new(:file, :node, :types, :expected)
# Verification instance for example
#
# @return [Verification]
def verification
Verification.new(self, generated)
end
# Normalized source
#
# @return [String]
def source
Unparser.unparse(node)
end
memoize :source
# Generated mutations on example source
#
2014-08-12 16:26:03 -07:00
# @return [Enumerable<Mutant::Mutation>]
def generated
Mutator.mutate(node).map do |node|
2015-05-02 23:11:44 +00:00
Mutation::Evil.new(self, node)
end
end
memoize :generated
end # Example
end # Meta
end # Mutant