Sha256: 27d73019d043165918087b87763a348d18e34dc4f48a007b07b793e6f4ee5c48

Contents?: true

Size: 672 Bytes

Versions: 5

Compression:

Stored size: 672 Bytes

Contents

shared_examples "a resource with a create action" do |model_attributes|
  def invalid_attributes
    {}
  end

  describe "#create" do
    it "creates a model based on a hash of attributes" do
      model = nil

      VCR.use_cassette("#{subject.endpoint}_create") do
        model = subject.create!(model_attributes)
      end

      expect(model).to respond_to :id
      expect(model.id).not_to be_empty
    end

    it "raises a FailedRequestError when the create action fails" do
      VCR.use_cassette("#{subject.endpoint}_create_failed") do
        expect { subject.create!(invalid_attributes) }.to raise_error Namely::FailedRequestError
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
namely-0.2.4 spec/shared_examples/a_resource_with_a_create_action.rb
namely-0.2.3 spec/shared_examples/a_resource_with_a_create_action.rb
namely-0.2.2 spec/shared_examples/a_resource_with_a_create_action.rb
namely-0.2.1 spec/shared_examples/a_resource_with_a_create_action.rb
namely-0.1.0 spec/shared_examples/a_resource_with_a_create_action.rb