Sha256: e098eed7a8fa3eb262008b630742a99c5bc27aeb16d2bf4a3acef00a5995f461

Contents?: true

Size: 1009 Bytes

Versions: 3

Compression:

Stored size: 1009 Bytes

Contents

require File.join(File.dirname(__FILE__), '../test_helper')
require File.join(File.dirname(__FILE__), 'fake_api')

describe HammerCLI::Apipie::WriteCommand do

  let(:cmd) { HammerCLI::Apipie::WriteCommand.new("") }
  let(:cmd_run) { cmd.run([]) }

  it "should raise exception when no action is defined" do
    cmd.stubs(:handle_exception).returns(HammerCLI::EX_SOFTWARE)
    cmd_run.must_equal HammerCLI::EX_SOFTWARE
  end

  context "resource defined" do

    before :each do
      cmd.class.resource FakeApi::Resources::Architecture, "some_action"

      arch = FakeApi::Resources::Architecture.new
      arch.expects(:some_action).returns([])
      FakeApi::Resources::Architecture.stubs(:new).returns(arch)
    end

    it "should perform a call to api when resource is defined" do
      cmd_run.must_equal 0
    end

    context "output" do
      it "should print success message" do
        cmd.class.success_message "XXX"
        proc { cmd_run }.must_output /.*XXX.*/
      end
    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
hammer_cli-0.0.12 test/unit/apipie/write_command_test.rb
hammer_cli-0.0.11 test/unit/apipie/write_command_test.rb
hammer_cli-0.0.10 test/unit/apipie/write_command_test.rb