mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FIX: Fix bulk_invite flaky tests (#17256)
This commit is contained in:
parent
f56c44d1c7
commit
2b80133819
@ -1026,12 +1026,15 @@ describe InvitesController do
|
|||||||
end
|
end
|
||||||
|
|
||||||
context '#resend_all_invites' do
|
context '#resend_all_invites' do
|
||||||
it 'resends all non-redeemed invites by a user' do
|
let(:admin) { Fabricate(:admin) }
|
||||||
SiteSetting.invite_expiry_days = 30
|
|
||||||
|
|
||||||
|
before do
|
||||||
|
SiteSetting.invite_expiry_days = 30
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'resends all non-redeemed invites by a user' do
|
||||||
freeze_time
|
freeze_time
|
||||||
|
|
||||||
admin = Fabricate(:admin)
|
|
||||||
new_invite = Fabricate(:invite, invited_by: admin)
|
new_invite = Fabricate(:invite, invited_by: admin)
|
||||||
expired_invite = Fabricate(:invite, invited_by: admin)
|
expired_invite = Fabricate(:invite, invited_by: admin)
|
||||||
expired_invite.update!(expires_at: 2.days.ago)
|
expired_invite.update!(expires_at: 2.days.ago)
|
||||||
@ -1047,6 +1050,17 @@ describe InvitesController do
|
|||||||
expect(expired_invite.reload.expires_at).to eq_time(2.days.ago)
|
expect(expired_invite.reload.expires_at).to eq_time(2.days.ago)
|
||||||
expect(redeemed_invite.reload.expires_at).to eq_time(5.days.ago)
|
expect(redeemed_invite.reload.expires_at).to eq_time(5.days.ago)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'errors if admins try to exceed limit of one bulk invite per day' do
|
||||||
|
RateLimiter.enable
|
||||||
|
sign_in(admin)
|
||||||
|
|
||||||
|
post '/invites/reinvite-all'
|
||||||
|
expect(response.status).to eq(200)
|
||||||
|
|
||||||
|
post '/invites/reinvite-all'
|
||||||
|
expect(response.parsed_body['errors'][0]).to eq(I18n.t("rate_limiter.slow_down"))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context '#upload_csv' do
|
context '#upload_csv' do
|
||||||
@ -1077,15 +1091,6 @@ describe InvitesController do
|
|||||||
expect(Jobs::BulkInvite.jobs.size).to eq(1)
|
expect(Jobs::BulkInvite.jobs.size).to eq(1)
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'limits admins when bulk inviting' do
|
|
||||||
sign_in(admin)
|
|
||||||
post '/invites/upload_csv.json', params: { file: file, name: 'discourse.csv' }
|
|
||||||
expect(response.status).to eq(200)
|
|
||||||
post '/invites/upload_csv.json', params: { file: file, name: 'discourse.csv' }
|
|
||||||
expect(response.status).to eq(422)
|
|
||||||
expect(Jobs::BulkInvite.jobs.size).to eq(1)
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'allows admin to bulk invite when DiscourseConnect enabled' do
|
it 'allows admin to bulk invite when DiscourseConnect enabled' do
|
||||||
SiteSetting.discourse_connect_url = "https://example.com"
|
SiteSetting.discourse_connect_url = "https://example.com"
|
||||||
SiteSetting.enable_discourse_connect = true
|
SiteSetting.enable_discourse_connect = true
|
||||||
|
Loading…
Reference in New Issue
Block a user