Sha256: 86c85f1e95979bf19b054fc240b621868241930fd74d84cc37d290257c633d7b

Contents?: true

Size: 1.31 KB

Versions: 24

Compression:

Stored size: 1.31 KB

Contents

# encoding: utf-8

require 'spec_helper'

describe Mutant::Mutator::Node::NamedValue::VariableAssignment, 'mutations' do
  before do
    Mutant::Random.stub(hex_string: 'random')
  end

  context 'global variable' do
    let(:source) { '$a = true' }

    let(:mutations) do
      mutations = []
      mutations << '$srandom = true'
      mutations << '$a = false'
      mutations << '$a = nil'
      mutations << 'nil'
    end

    it_should_behave_like 'a mutator'
  end

  context 'class variable' do
    let(:source) { '@@a = true' }

    let(:mutations) do
      mutations = []
      mutations << '@@srandom = true'
      mutations << '@@a = false'
      mutations << '@@a = nil'
      mutations << 'nil'
    end

    it_should_behave_like 'a mutator'
  end

  context 'instance variable' do
    let(:source) { '@a = true' }

    let(:mutations) do
      mutations = []
      mutations << '@srandom = true'
      mutations << '@a = false'
      mutations << '@a = nil'
      mutations << 'nil'
    end

    it_should_behave_like 'a mutator'
  end

  context 'local variable' do
    let(:source) { 'a = true' }

    let(:mutations) do
      mutations = []
      mutations << 'srandom = true'
      mutations << 'a = false'
      mutations << 'a = nil'
      mutations << 'nil'
    end

    it_should_behave_like 'a mutator'
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
mutant-0.5.12 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.11 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.10 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.9 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.8 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.7 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.6 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.5 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.4 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.3 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.2 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.1 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.5.0 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.3.6 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.3.5 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.3.4 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.3.3 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.3.2 spec/unit/mutant/mutator/node/named_value/variable_assignment_spec.rb
mutant-0.3.1 spec/unit/mutant/mutator/node/named_value/variable_assignment/mutation_spec.rb
mutant-0.3.0 spec/unit/mutant/mutator/node/named_value/variable_assignment/mutation_spec.rb