Sha256: 2785bb74df4135c9bed30ffbd826da81a36c06ca157802f730d5550170ac7527

Contents?: true

Size: 1.16 KB

Versions: 2

Compression:

Stored size: 1.16 KB

Contents

require 'spec_helper'
require 'opsicle/deployments'
require 'opsicle/monitor/spy/dataspyable'
require 'opsicle/monitor/translatable'
require 'opsicle/monitor/spy/deployments'
require 'opsicle/monitor/app'

describe Opsicle::Monitor::Spy::Deployments do
  before do
    @deployments = double(:data => {})

    expect(Opsicle::Deployments).to receive(:new).and_return(@deployments)

    @subject = Opsicle::Monitor::Spy::Deployments.new
  end

  describe "#user_from_arn" do
    it "parses a normal user string" do
      result = @subject.user_from_arn("arn:aws:iam::465198754621:user/chris.arcand")
      expect(result).to eq("chris.arcand")
    end

    it "parses a root user string" do
      result = @subject.user_from_arn("arn:aws:iam::465198754621:root")
      expect(result).to eq("root")
    end

    it "handles an unknown string gracefully" do
      result = @subject.user_from_arn("Ugly string")
      expect(result).to eq("Ugly string")
    end

    it "handles a nil or empty string gracefully" do
      nilstring = @subject.user_from_arn(nil)
      emptystring = @subject.user_from_arn("")

      expect(nilstring).to eq("")
      expect(nilstring).to eq("")
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
opsicle-0.2.1 spec/opsicle/monitor/spy/deployments_spec.rb
opsicle-0.2.0 spec/opsicle/monitor/spy/deployments_spec.rb