Sha256: 7b0fb4268fb7a1cb6ec56f1fd61329be832b5ae83214b5985b91d191a62e5c0a

Contents?: true

Size: 1020 Bytes

Versions: 8

Compression:

Stored size: 1020 Bytes

Contents

require "rails_helper"

RSpec.describe ::Dorsale::ExpenseGun::ExpensesController, type: :controller do
  routes { Dorsale::Engine.routes }
  let(:user) { create(:user) }
  before(:each) { sign_in(user) }

  describe "#index" do
    describe "filters" do
      render_views

      it "should filter by state" do
        expense1 = create(:expense_gun_expense, state: "accepted")
        expense2 = create(:expense_gun_expense, state: "refused")

        cookies[:filters] = {expense_state: "accepted"}.to_json
        get :index

        expect(assigns :expenses).to eq [expense1]
      end

      it "should filter by user" do
        user1    = create(:user)
        user2    = create(:user)
        expense1 = create(:expense_gun_expense, user: user1)
        expense2 = create(:expense_gun_expense, user: user2)

        cookies[:filters] = {expense_user_id: user1.id}.to_json
        get :index

        expect(assigns :expenses).to eq [expense1]
      end
    end # describe "filters"
  end # describe "#index"
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
dorsale-3.1.7 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb
dorsale-3.1.6 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb
dorsale-3.1.5 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb
dorsale-3.1.4 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb
dorsale-3.1.3 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb
dorsale-3.1.2 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb
dorsale-3.1.1 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb
dorsale-3.1.0 spec/controllers/dorsale/expense_gun/expenses_controller_spec.rb