0
0
Fork 0

Expand coverage for "system checks" (#24216)

This commit is contained in:
Matt Jankowski 2023-04-07 14:39:34 +02:00 committed by GitHub
parent 862861069d
commit 9d39b111f1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 353 additions and 0 deletions

View file

@ -0,0 +1,53 @@
# frozen_string_literal: true
require 'rails_helper'
describe Admin::SystemCheck::RulesCheck do
subject(:check) { described_class.new(user) }
let(:user) { Fabricate(:user) }
describe 'skip?' do
context 'when user can manage rules' do
before { allow(user).to receive(:can?).with(:manage_rules).and_return(true) }
it 'returns false' do
expect(check.skip?).to be false
end
end
context 'when user cannot manage rules' do
before { allow(user).to receive(:can?).with(:manage_rules).and_return(false) }
it 'returns true' do
expect(check.skip?).to be true
end
end
end
describe 'pass?' do
context 'when there is not a kept rule' do
it 'returns false' do
expect(check.pass?).to be false
end
end
context 'when there is a kept rule' do
before { Fabricate(:rule) }
it 'returns true' do
expect(check.pass?).to be true
end
end
end
describe 'message' do
it 'sends class name symbol to message instance' do
allow(Admin::SystemCheck::Message).to receive(:new).with(:rules_check, nil, '/admin/rules')
check.message
expect(Admin::SystemCheck::Message).to have_received(:new).with(:rules_check, nil, '/admin/rules')
end
end
end