DEV: Stop leaking state in dashboard controller specs (#19608)
A few specs in `dashboard_controller_spec.rb` set some state in redis but don't clean it up afterwards which causes other specs to fail when they're ran after `dashboard_controller_spec.rb`.
Related commit: 18467d4
.
This commit is contained in:
parent
953b823c5a
commit
d8b39810d2
|
@ -186,6 +186,21 @@ module DiscourseUpdates
|
|||
Discourse.redis.hset(last_viewed_feature_dates_for_users_key, user_id.to_s, feature_date)
|
||||
end
|
||||
|
||||
def clean_state
|
||||
Discourse.redis.del(
|
||||
last_installed_version_key,
|
||||
latest_version_key,
|
||||
critical_updates_available_key,
|
||||
missing_versions_count_key,
|
||||
updated_at_key,
|
||||
missing_versions_list_key,
|
||||
new_features_key,
|
||||
last_viewed_feature_dates_for_users_key,
|
||||
*Discourse.redis.keys("#{missing_versions_key_prefix}*"),
|
||||
*Discourse.redis.keys(new_features_last_seen_key("*")),
|
||||
)
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def last_installed_version_key
|
||||
|
|
|
@ -60,8 +60,7 @@ RSpec.describe Jobs::CheckNewFeatures do
|
|||
end
|
||||
|
||||
after do
|
||||
Discourse.redis.del("new_features")
|
||||
Discourse.redis.del("last_viewed_feature_dates_for_users_hash")
|
||||
DiscourseUpdates.clean_state
|
||||
end
|
||||
|
||||
it "backfills last viewed feature for admins who don't have last viewed feature" do
|
||||
|
|
|
@ -155,7 +155,7 @@ RSpec.describe DiscourseUpdates do
|
|||
end
|
||||
|
||||
after do
|
||||
Discourse.redis.del('new_features')
|
||||
DiscourseUpdates.clean_state
|
||||
end
|
||||
|
||||
it 'returns all items on the first run' do
|
||||
|
|
|
@ -172,12 +172,13 @@ RSpec.describe Admin::DashboardController do
|
|||
end
|
||||
|
||||
describe '#new_features' do
|
||||
after do
|
||||
DiscourseUpdates.clean_state
|
||||
end
|
||||
|
||||
context "when logged in as an admin" do
|
||||
before do
|
||||
sign_in(admin)
|
||||
Discourse.redis.del "new_features_last_seen_user_#{admin.id}"
|
||||
Discourse.redis.del "new_features"
|
||||
Discourse.redis.del "last_viewed_feature_dates_for_users_hash"
|
||||
end
|
||||
|
||||
it 'is empty by default' do
|
||||
|
@ -284,6 +285,10 @@ RSpec.describe Admin::DashboardController do
|
|||
end
|
||||
|
||||
describe '#mark_new_features_as_seen' do
|
||||
after do
|
||||
DiscourseUpdates.clean_state
|
||||
end
|
||||
|
||||
context "when logged in as an admin" do
|
||||
before { sign_in(admin) }
|
||||
|
||||
|
|
Loading…
Reference in New Issue