Sha256: c4baae5fcafb6fabaaeec78a705c4acac53623360ac843221015861f268e89db
Contents?: true
Size: 1.2 KB
Versions: 2
Compression:
Stored size: 1.2 KB
Contents
# encoding: utf-8 module Mutant class Mutator class Node # Mutator for case nodes class Case < self handle(:case) children :condition private # Emit mutations # # @return [undefined] # # @api private # def dispatch emit_condition_mutations emit_when_mutations emit_else_mutations end # Emit when mutations # # @return [undefined] # # @api private # def emit_when_mutations indices = children.each_index.drop(1).take(children.length - 2) one = indices.one? indices.each do |index| mutate_child(index) delete_child(index) unless one end end # Emit else mutations # # @return [undefined] # # @api private # def emit_else_mutations else_branch = children.last else_index = children.length - 1 if else_branch mutate_child(else_index) emit_child_update(else_index, nil) end end end # Case end # Node end # Mutator end # Mutant
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
mutant-0.3.0.rc1 | lib/mutant/mutator/node/case.rb |
mutant-0.3.0.beta22 | lib/mutant/mutator/node/case.rb |