Add request spec for report indicator
This commit is contained in:
parent
92c9ed011f
commit
99faf075ff
|
@ -70,6 +70,7 @@ RSpec.configure do |config|
|
|||
config.include Devise::Test::ControllerHelpers, type: :controller
|
||||
config.include Devise::Test::ControllerHelpers, type: :helper
|
||||
config.include Devise::Test::ControllerHelpers, type: :view
|
||||
config.include Devise::Test::IntegrationHelpers, type: :request
|
||||
config.include ViewComponent::TestHelpers, type: :component
|
||||
config.include ViewComponent::SystemTestHelpers, type: :component
|
||||
end
|
||||
|
|
|
@ -0,0 +1,52 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require "rails_helper"
|
||||
|
||||
RSpec.describe "New reports indicator", type: :request do
|
||||
let(:user) { FactoryBot.create(:user, roles: [:moderator]) }
|
||||
|
||||
before do
|
||||
sign_in user
|
||||
end
|
||||
|
||||
subject { get "/" }
|
||||
|
||||
describe "setting an assign for new reports" do
|
||||
context "never visited the reports listing before" do
|
||||
it "sets a assign" do
|
||||
subject
|
||||
|
||||
expect(assigns["has_new_reports"]).to eq(true)
|
||||
end
|
||||
end
|
||||
|
||||
context "visited the reports listing, with no new reports" do
|
||||
before do
|
||||
user.last_reports_visit = DateTime.now
|
||||
user.save
|
||||
end
|
||||
|
||||
it "sets a assign" do
|
||||
subject
|
||||
|
||||
expect(assigns["has_new_reports"]).to eq(false)
|
||||
end
|
||||
end
|
||||
|
||||
context "visited the reports listing, with new reports" do
|
||||
let(:other_user) { FactoryBot.create :user }
|
||||
|
||||
before do
|
||||
Report.create(user:, target_id: other_user.id, target_user_id: other_user.id, type: "Reports::User", created_at: DateTime.now)
|
||||
user.last_reports_visit = DateTime.now - 1.day
|
||||
user.save
|
||||
end
|
||||
|
||||
it "sets a assign" do
|
||||
subject
|
||||
|
||||
expect(assigns["has_new_reports"]).to eq(true)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue