# Stubs out all Git repository access done by models so that specs can run # against fake repositories without Grit complaining that they don't exist. module StubbedRepository def path_to_repo if new_record? || path == 'newproject' # There are a couple Project specs and features that expect the Project's # path to be in the returned path, so let's patronize them. File.join(Rails.root, 'tmp', 'repositories', path) else # For everything else, just give it the path to one of our real seeded # repos. File.join(Rails.root, 'tmp', 'repositories', 'gitlabhq') end end def satellite FakeSatellite.new end class FakeSatellite def exists? true end def create true end end end Project.send(:include, StubbedRepository)