Sha256: bf256ac4e2f43d0b7ce5fdfe6f5cb614db13e777f58b1ab1cfe8a87d8aa9d5a6

Contents?: true

Size: 1.51 KB

Versions: 18

Compression:

Stored size: 1.51 KB

Contents

require "spec_helper"

describe "brightbox servers" do
  let(:output) { FauxIO.new { Brightbox.run(argv) } }
  let(:stdout) { output.stdout }
  let(:stderr) { output.stderr }

  let(:resource_class) { Brightbox::Server }
  let(:resource_id) { "srv-12345" }
  let(:resource) { double(resource_class, :to_s => resource_id) }

  let(:resource_ids) { [resource_id] }
  let(:results) { [resource] }

  before do
    config = config_from_contents(USER_APP_CONFIG_CONTENTS)
    cache_access_token(config, "f83da712e6299cda953513ec07f7a754f747d727")
  end

  describe "reset" do
    context "when resource is known" do
      let(:argv) { %w[servers reset srv-12345] }

      before do
        expect(resource_class).to receive(:find_or_call).with(resource_ids).and_return(results)
        expect(resource).to receive(:reboot).with(true)
      end

      it "outputs notice to STDERR" do
        expect(stderr).to match("Sending reset to #{resource_id}")
      end
    end

    context "when resource is unknown" do
      let(:argv) { %w[servers reset srv-12345] }

      before do
        expect(resource_class).to receive(:find).with(resource_id).and_raise(Brightbox::Api::NotFound)
      end

      it "outputs error to STDERR" do
        expect(stderr).to match("ERROR: Couldn't find #{resource_id}")
      end
    end

    context "when no arguments are passed" do
      let(:argv) { %w[servers reset] }

      it "outputs error to STDERR" do
        expect(stderr).to match("ERROR: You must specify servers to reset")
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
brightbox-cli-5.0.0 spec/commands/servers/reset_spec.rb
brightbox-cli-5.0.0.rc2 spec/commands/servers/reset_spec.rb
brightbox-cli-5.0.0.rc1 spec/commands/servers/reset_spec.rb
brightbox-cli-5.0.0.alpha spec/commands/servers/reset_spec.rb
brightbox-cli-4.8.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.7.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.6.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.5.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.5.0.rc1 spec/commands/servers/reset_spec.rb
brightbox-cli-4.4.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.3.2 spec/commands/servers/reset_spec.rb
brightbox-cli-4.3.1 spec/commands/servers/reset_spec.rb
brightbox-cli-4.3.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.2.1 spec/commands/servers/reset_spec.rb
brightbox-cli-4.2.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.1.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.0.0 spec/commands/servers/reset_spec.rb
brightbox-cli-4.0.0.rc2 spec/commands/servers/reset_spec.rb