Prevent vendorizing gems fixtures in dot directories (like .bundle) from loading when running tests (#50548)
* Fix Issue with vendorized gems loading fixtures from dot directories * Fixing matching logic to be specifically any dir starting with a dot on the root Co-authored-by: Rafael Mendonça França <rafael@rubyonrails.org>
This commit is contained in:
parent
61af6b78a5
commit
f6f6b0542f
@ -627,7 +627,7 @@ def load_seed
|
||||
next if is_a?(Rails::Application)
|
||||
|
||||
fixtures = config.root.join("test", "fixtures")
|
||||
if fixtures_in_root_and_not_in_vendor?(fixtures)
|
||||
if fixtures_in_root_and_not_in_vendor_or_dot_dir?(fixtures)
|
||||
ActiveSupport.on_load(:active_record_fixtures) { self.fixture_paths |= ["#{fixtures}/"] }
|
||||
end
|
||||
end
|
||||
@ -735,9 +735,10 @@ def _all_load_paths(add_autoload_paths_to_load_path)
|
||||
end
|
||||
end
|
||||
|
||||
def fixtures_in_root_and_not_in_vendor?(fixtures)
|
||||
def fixtures_in_root_and_not_in_vendor_or_dot_dir?(fixtures)
|
||||
fixtures.exist? && fixtures.to_s.start_with?(Rails.root.to_s) &&
|
||||
!fixtures.to_s.start_with?(Rails.root.join("vendor").to_s)
|
||||
!fixtures.to_s.start_with?(Rails.root.join("vendor").to_s) &&
|
||||
!fixtures.to_s.start_with?("#{Rails.root}/.".to_s)
|
||||
end
|
||||
|
||||
def build_request(env)
|
||||
|
Loading…
Reference in New Issue
Block a user