Sha256: b938472831d9d8fa27347dc0ec3a942e1cca041fdd599fa0f820bcad1e4e0be3

Contents?: true

Size: 1.06 KB

Versions: 22

Compression:

Stored size: 1.06 KB

Contents

require "webmock/minitest"

module SupportsResourceLocking
  def self.included(base)
    base.class_eval do
      let(:collection_name) { subject.collection_name }

      def test_responds_to_locked
        assert_respond_to subject, :locked?
      end

      def test_responds_to_lock
        assert_respond_to subject, :lock!
      end

      def test_lock_makes_request
        subject.id = "tst-12345"

        stub_request(:put, "http://localhost/1.0/#{collection_name}/tst-12345/lock_resource").
          with(:query => hash_including(:account_id)).
          to_return(:status => 200, :body => "{}", :headers => {})

        subject.lock!
      end

      def test_responds_to_unlock
        assert_respond_to subject, :unlock!
      end

      def test_unlock_makes_request
        subject.id = "tst-12345"

        stub_request(:put, "http://localhost/1.0/#{collection_name}/tst-12345/unlock_resource").
          with(:query => hash_including(:account_id)).
          to_return(:status => 200, :body => "{}", :headers => {})

        subject.unlock!
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
fog-brightbox-1.10.0 spec/supports_resource_locking.rb
fog-brightbox-1.9.1 spec/supports_resource_locking.rb
fog-brightbox-1.9.0 spec/supports_resource_locking.rb
fog-brightbox-1.8.2 spec/supports_resource_locking.rb
fog-brightbox-1.8.1 spec/supports_resource_locking.rb
fog-brightbox-1.8.0 spec/supports_resource_locking.rb
fog-brightbox-1.7.3 spec/supports_resource_locking.rb
fog-brightbox-1.7.2 spec/supports_resource_locking.rb
fog-brightbox-1.7.1 spec/supports_resource_locking.rb
fog-brightbox-1.7.0 spec/supports_resource_locking.rb
fog-brightbox-1.6.0 spec/supports_resource_locking.rb
fog-brightbox-1.5.0 spec/supports_resource_locking.rb
fog-brightbox-1.5.0.rc1 spec/supports_resource_locking.rb
fog-brightbox-1.4.2 spec/supports_resource_locking.rb
fog-brightbox-1.4.1 spec/supports_resource_locking.rb
fog-brightbox-1.4.0 spec/supports_resource_locking.rb
fog-brightbox-1.3.0 spec/supports_resource_locking.rb
fog-brightbox-1.2.0 spec/supports_resource_locking.rb
fog-brightbox-1.1.0 spec/supports_resource_locking.rb
fog-brightbox-1.0.0 spec/supports_resource_locking.rb