Sha256: eb8835224f79ce4999e25575cde28e6cf15a83fa23ccf0ee69366e2b60890eee

Contents?: true

Size: 991 Bytes

Versions: 10

Compression:

Stored size: 991 Bytes

Contents

require 'spec_helper'

describe Mutant::Mutator::Node::Literal, 'hash' do
  let(:source) { '{true => true, false => false}' }

  let(:mutations) do
    mutations = []

    # Literal replaced with nil
    mutations << 'nil'

    # Mutation of each key and value in hash
    mutations << '{ false => true  ,  false => false }'
    mutations << '{ nil   => true  ,  false => false }'
    mutations << '{ true  => false ,  false => false }'
    mutations << '{ true  => nil   ,  false => false }'
    mutations << '{ true  => true  ,  true  => false }'
    mutations << '{ true  => true  ,  nil   => false }'
    mutations << '{ true  => true  ,  false => true  }'
    mutations << '{ true  => true  ,  false => nil   }'

    # Remove each key once
    mutations << '{ true => true }' 
    mutations << '{ false => false }' 

    # Empty hash
    mutations << '{}'

    # Extra element
    mutations << '{nil => nil, true => true, false => false}'
  end

  it_should_behave_like 'a mutator'
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
mutant-0.2.13 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.12 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.11 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.9 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.8 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.7 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.6 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.5 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.4 spec/unit/mutant/mutator/node/literal/hash_spec.rb
mutant-0.2.3 spec/unit/mutant/mutator/node/literal/hash_spec.rb