From 36011568d5c335a90a57756fd5d6a8baebd40e85 Mon Sep 17 00:00:00 2001 From: Markus Schirp Date: Fri, 5 Jul 2013 03:02:45 +0200 Subject: [PATCH] Move nil body mutation to parent nodes This ensures mutant all the time creates semantically valid asts. --- lib/mutant/mutator/node/begin.rb | 1 - lib/mutant/mutator/node/block.rb | 1 + lib/mutant/mutator/node/define.rb | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/mutant/mutator/node/begin.rb b/lib/mutant/mutator/node/begin.rb index 42817fef..cda4cefc 100644 --- a/lib/mutant/mutator/node/begin.rb +++ b/lib/mutant/mutator/node/begin.rb @@ -24,7 +24,6 @@ module Mutant children.each do |child| emit(child) end - emit(nil) unless parent_send? end # Test if parent input is a send diff --git a/lib/mutant/mutator/node/block.rb b/lib/mutant/mutator/node/block.rb index 0ea07048..acc1b739 100644 --- a/lib/mutant/mutator/node/block.rb +++ b/lib/mutant/mutator/node/block.rb @@ -22,6 +22,7 @@ module Mutant if body emit_body_mutations end + emit_body(nil) emit_body(RAISE) end diff --git a/lib/mutant/mutator/node/define.rb b/lib/mutant/mutator/node/define.rb index 1374bba9..7c91ed1c 100644 --- a/lib/mutant/mutator/node/define.rb +++ b/lib/mutant/mutator/node/define.rb @@ -15,6 +15,7 @@ module Mutant def dispatch emit_arguments_mutations emit_body(RAISE) + emit_body(nil) emit_body_mutations if body end