Class: Mutiny::Mutants::MutantSet
- Inherits:
-
Object
- Object
- Mutiny::Mutants::MutantSet
- Defined in:
- lib/mutiny/mutants/mutant_set.rb
Instance Method Summary collapse
- #add(subject, mutated_code) ⇒ Object
- #group_by_subject ⇒ Object
-
#initialize ⇒ MutantSet
constructor
A new instance of MutantSet.
- #size ⇒ Object
- #store(mutant_directory = ".mutants") ⇒ Object
Constructor Details
#initialize ⇒ MutantSet
Returns a new instance of MutantSet.
6 7 8 |
# File 'lib/mutiny/mutants/mutant_set.rb', line 6 def initialize @mutants_by_subject = Hash.new([]) end |
Instance Method Details
#add(subject, mutated_code) ⇒ Object
10 11 12 13 |
# File 'lib/mutiny/mutants/mutant_set.rb', line 10 def add(subject, mutated_code) mutants = mutated_code.map { |code| create_mutant(subject, code) } @mutants_by_subject[subject] = @mutants_by_subject[subject] + mutants end |
#group_by_subject ⇒ Object
19 20 21 |
# File 'lib/mutiny/mutants/mutant_set.rb', line 19 def group_by_subject @mutants_by_subject.dup end |
#size ⇒ Object
15 16 17 |
# File 'lib/mutiny/mutants/mutant_set.rb', line 15 def size mutants.size end |
#store(mutant_directory = ".mutants") ⇒ Object
23 24 25 26 27 |
# File 'lib/mutiny/mutants/mutant_set.rb', line 23 def store(mutant_directory = ".mutants") group_by_subject.each do |_, mutants| mutants.each_with_index { |mutant, index| mutant.store(mutant_directory, index) } end end |