Sha256: e078a8ca168cd54bbd519ac478970706f28d58cc5d68cd446c4bff9c35c8e95a

Contents?: true

Size: 1.63 KB

Versions: 5

Compression:

Stored size: 1.63 KB

Contents

# -*- coding: utf-8 -*-
require 'spec_helper'

describe Magellan::Cli::Resources::Team do

  let(:cmd){ Magellan::Cli::Resources::Team.new }

  describe :list do
    before do
      expect(cmd).to receive(:load_selections).and_return({"magellan_auth_organization" => {"id" => "1", "name" => "testorg1"}})
      expect(cmd).to receive(:get_json).and_return([{id: 1, organization_id: 1, name: "team1" }])
      expect($stdout).to receive(:puts)
    end
    it do
      cmd.list
    end
  end

  describe :create do
    describe :success do
      let(:team_list_response) { [{"id" => 1, "name" => "team1"}] }
      before do
        allow(cmd).to receive(:load_selections).and_return({"magellan_auth_organization" => {"id" => 1, "name" => "org1"}})
        expect(cmd).to receive(:post_json).with("/admin/magellan~auth~team/new.json", { "magellan_auth_team" => { "organization_id" => 1, "name" => "team1", "role" => role } })
        # TODO: stub in details...
        allow(cmd).to receive(:get_json).with(any_args).and_return(team_list_response)
        allow(cmd).to receive(:get_json).with(any_args).and_return(team_list_response)
      end
      context "role=reader" do
        let(:role){ "reader" }
        it do
          cmd.create("team1", role)
        end
      end
      context "role=admin" do
        let(:role){ "admin" }
        it do
          cmd.create("team1", role)
        end
      end
    end
    describe :error do
      context "role=owner" do
        let(:role){ "owner" }
        it do
          expect{
            cmd.create("team1", role)
          }.to raise_error(RuntimeError, /ROLE should be/)
        end
      end
    end
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
magellan-cli-0.2.18 spec/magellan/cli/resources/team_spec.rb
magellan-cli-0.2.17 spec/magellan/cli/resources/team_spec.rb
magellan-cli-0.2.16 spec/magellan/cli/resources/team_spec.rb
magellan-cli-0.2.15 spec/magellan/cli/resources/team_spec.rb
magellan-cli-0.2.14 spec/magellan/cli/resources/team_spec.rb