Sha256: 885f7f9508716a6a1f23c563a446e1ecf820a9bcc0e44602169c948f47ab3c12

Contents?: true

Size: 882 Bytes

Versions: 4

Compression:

Stored size: 882 Bytes

Contents

describe BeaversController do
  describe 'POST create' do
    it 'publishes a create event' do
      expect do
        post :create, params: { beaver: { name: 'beaver' } }
      end.to publish_event('user_creates_beaver', 'beaver_name' => 'beaver')
    end
  end

  context 'for an existing beaver' do
    let(:beaver) { Beaver.create name: 'beaver' }

    describe 'PUT update' do
      it 'publishes an update event' do
        expect do
          put :update, params: { id: beaver.id, beaver: { name: 'beaver_updated' } }
        end.to publish_event('user_updates_beaver', 'beaver_name' => 'beaver_updated')
      end
    end

    describe 'DELETE destroy' do
      it 'publishes an delete event' do
        expect do
          delete :destroy, params: { id: beaver.id }
        end.to publish_event('user_deletes_beaver', 'beaver_name' => 'beaver')
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rabbit_feed-3.0.3 example/rails_app/spec/controllers/beavers_controller_spec.rb
rabbit_feed-3.0.2 example/rails_app/spec/controllers/beavers_controller_spec.rb
rabbit_feed-3.0.1 example/rails_app/spec/controllers/beavers_controller_spec.rb
rabbit_feed-3.0.0 example/rails_app/spec/controllers/beavers_controller_spec.rb