free_mutant/lib/mutant/mutator/node/conditional_loop.rb
Markus Schirp 43c546fe74 Add conditional loop mutator
* Closes #143
* Renamed Mutator::Node::While to ConditionalLoop and use it to
  generated mutations for until also.
2013-12-29 22:32:26 +01:00

32 lines
535 B
Ruby

# encoding: utf-8
module Mutant
class Mutator
class Node
# Mutator for while expressions
class ConditionalLoop < self
handle(:until, :while)
children :condition, :body
private
# Emit mutations
#
# @return [undefined]
#
# @api private
#
def dispatch
emit_condition_mutations
emit_body_mutations
emit_body(nil)
emit_nil
end
end # While
end # Node
end # Mutator
end # Mutant