Sha256: 75cb0cc6da8ed389e6134c9fc71cf026d52ceab1e064770510cebe56f4d16465

Contents?: true

Size: 1.6 KB

Versions: 7

Compression:

Stored size: 1.6 KB

Contents

# -*- encoding : utf-8 -*-

shared_examples_for 'machine input' do
  subject(:input) do
    myinput = create_machine_input_card
    myinput
  end
  let!(:machine) do
    f = create_machine_card
    f << create_machine_input_card
    f.putty
    f
  end
  let(:more_input) do
    moreinput = create_another_machine_input_card
    moreinput
  end

  context 'when removed' do
    it 'updates machine_input card of machine card' do
      machine
      Card::Auth.as_bot do
        input.delete!
      end
      ca = Card.gimme machine.name
      expect(ca.machine_input_card.item_cards).to eq([])
    end

    it 'updates output of machine card' do
      machine
      Card::Auth.as_bot do
        input.delete!
      end
      f = Card.gimme machine.cardname
      path = f.machine_output_path
      expect(File.read path).to eq('')
    end
  end

  it 'delivers machine input' do
    expect(input.machine_input).to eq(card_content[:out])
  end

  context 'when updated' do
    it 'updates output of related machine card' do
      input.putty content: card_content[:changed_in]
      updated_machine = Card.gimme machine.cardname
      path = updated_machine.machine_output_path
      expect(File.read path).to eq(card_content[:changed_out])
    end
  end

  context 'when added' do
    it 'updates output of related machine card' do
      if machine.is_a? Card::Set::Type::Pointer
        machine << more_input
        machine.putty
        updated_machine = Card.gimme machine.cardname
        path = updated_machine.machine_output_path
        expect(File.read path).to eq(([card_content[:out]] * 2).join("\n"))
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
card-1.18.6 mod/03_machines/spec/lib/shared_machine_input_examples.rb
card-1.18.5 mod/03_machines/spec/lib/shared_machine_input_examples.rb
card-1.18.4 mod/03_machines/spec/lib/shared_machine_input_examples.rb
card-1.18.3 mod/03_machines/spec/lib/shared_machine_input_examples.rb
card-1.18.2 mod/03_machines/spec/lib/shared_machine_input_examples.rb
card-1.18.1 mod/03_machines/spec/lib/shared_machine_input_examples.rb
card-1.18.0 mod/03_machines/spec/lib/shared_machine_input_examples.rb