File: api_spec.rb

package info (click to toggle)
ruby-aruba 2.1.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,972 kB
  • sloc: ruby: 7,151; javascript: 6,850; makefile: 5
file content (62 lines) | stat: -rw-r--r-- 1,901 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
require "spec_helper"
require "aruba/api"
require "fileutils"
require "time"

describe Aruba::Api do
  include_context "uses aruba API"

  describe "tags" do
    describe "@announce_stdout" do
      after { @aruba.all_commands.each(&:stop) }

      context "enabled" do
        before do
          @aruba.aruba.announcer = instance_double Aruba::Platforms::Announcer
          allow(@aruba.aruba.announcer).to receive(:announce)
        end

        it "announces to stdout exactly once" do
          @aruba.run_command_and_stop('echo "hello world"', fail_on_error: false)

          aggregate_failures do
            expect(@aruba.last_command_started.output).to include("hello world")
            expect(@aruba.aruba.announcer).to have_received(:announce).with(:stdout).once
          end
        end
      end

      context "disabled" do
        it "does not announce to stdout" do
          result = capture(:stdout) do
            @aruba.run_command_and_stop('echo "hello world"', fail_on_error: false)
          end

          expect(result).not_to include("hello world")
          expect(@aruba.last_command_started.output).to include("hello world")
        end
      end
    end
  end

  describe "#set_environment_variable" do
    after do
      @aruba.all_commands.each(&:stop)
    end

    it "set environment variable" do
      @aruba.set_environment_variable "LONG_LONG_ENV_VARIABLE", "true"
      @aruba.run_command_and_stop "env"
      expect(@aruba.last_command_started.output)
        .to include("LONG_LONG_ENV_VARIABLE=true")
    end

    it "overwrites environment variable" do
      @aruba.set_environment_variable "LONG_LONG_ENV_VARIABLE", "true"
      @aruba.set_environment_variable "LONG_LONG_ENV_VARIABLE", "false"
      @aruba.run_command_and_stop "env"
      expect(@aruba.last_command_started.output)
        .to include("LONG_LONG_ENV_VARIABLE=false")
    end
  end
end