Sha256: 485aefc708fca30d7134ba97c1239a7294629f5a8acc55722b8ef99672948f9a

Contents?: true

Size: 1.26 KB

Versions: 6

Compression:

Stored size: 1.26 KB

Contents

require "rails_helper"

describe Dorsale::CommentsController, type: :controller do
  routes { Dorsale::Engine.routes }

  let(:user) { create(:user) }

  before(:each) { sign_in(user) }

  let(:valid_params){
    commentable = create(:customer_vault_corporation)
    {
      :comment => {
        :commentable_id   => commentable.id,
        :commentable_type => commentable.class.to_s,
        :text => "Hello",
      },
      :back_url => "/",
    }
  }

  describe "create" do
    it "should create comment" do
      post :create, params: valid_params
      expect(assigns(:comment)).to be_persisted
    end

    it "should redirect to back_url" do
      post :create, params: valid_params
      expect(response).to redirect_to("/")
    end
  end

  describe "update" do
    it "should update comment text" do
      comment = create(:dorsale_comment)
      patch :update, params: {id: comment, comment: {text: "New-comment-text"}, back_url: "/"}
      expect(response).to redirect_to("/")
      expect(comment.reload.text).to eq "New-comment-text"
    end
  end

  describe "destroy" do
    it "should destroy comment" do
      comment = create(:dorsale_comment)
      delete :destroy, params: {id: comment, back_url: "/"}
      expect(response).to redirect_to("/")
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
dorsale-3.5.2 spec/controllers/dorsale/comments_controller_spec.rb
dorsale-3.5.1 spec/controllers/dorsale/comments_controller_spec.rb
dorsale-3.5.0 spec/controllers/dorsale/comments_controller_spec.rb
dorsale-3.4.0 spec/controllers/dorsale/comments_controller_spec.rb
dorsale-3.3.0 spec/controllers/dorsale/comments_controller_spec.rb
dorsale-3.2.0 spec/controllers/dorsale/comments_controller_spec.rb