mirror of
https://github.com/discourse/discourse.git
synced 2025-05-21 18:12:32 +08:00
DEV: Prefabrication (test optimization) (#7414)
* Introduced fab!, a helper that creates database state for a group It's almost identical to let_it_be, except: 1. It creates a new object for each test by default, 2. You can disable it using PREFABRICATION=0
This commit is contained in:
@ -24,7 +24,7 @@ RSpec.describe ApplicationController do
|
||||
|
||||
describe '#redirect_to_second_factor_if_required' do
|
||||
let(:admin) { Fabricate(:admin) }
|
||||
let(:user) { Fabricate(:user) }
|
||||
fab!(:user) { Fabricate(:user) }
|
||||
|
||||
before do
|
||||
admin # to skip welcome wizard at home page `/`
|
||||
@ -254,11 +254,11 @@ RSpec.describe ApplicationController do
|
||||
end
|
||||
|
||||
describe "#handle_theme" do
|
||||
let(:theme) { Fabricate(:theme, user_selectable: true) }
|
||||
let(:theme2) { Fabricate(:theme, user_selectable: true) }
|
||||
let(:non_selectable_theme) { Fabricate(:theme, user_selectable: false) }
|
||||
let(:user) { Fabricate(:user) }
|
||||
let(:admin) { Fabricate(:admin) }
|
||||
let!(:theme) { Fabricate(:theme, user_selectable: true) }
|
||||
let!(:theme2) { Fabricate(:theme, user_selectable: true) }
|
||||
let!(:non_selectable_theme) { Fabricate(:theme, user_selectable: false) }
|
||||
fab!(:user) { Fabricate(:user) }
|
||||
fab!(:admin) { Fabricate(:admin) }
|
||||
|
||||
before do
|
||||
sign_in(user)
|
||||
|
Reference in New Issue
Block a user