76 lines
1.1 KiB
Ruby
76 lines
1.1 KiB
Ruby
require "gitlab/git/repository"
|
|
require "project"
|
|
require "merge_request"
|
|
require "shell"
|
|
|
|
# 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.
|
|
class Project
|
|
def repository
|
|
if path == "empty" || !path
|
|
nil
|
|
else
|
|
GitLabTestRepo.new(path_with_namespace)
|
|
end
|
|
end
|
|
|
|
def satellite
|
|
FakeSatellite.new
|
|
end
|
|
|
|
class FakeSatellite
|
|
def exists?
|
|
true
|
|
end
|
|
|
|
def destroy
|
|
true
|
|
end
|
|
|
|
def create
|
|
true
|
|
end
|
|
end
|
|
end
|
|
|
|
class MergeRequest
|
|
def check_if_can_be_merged
|
|
true
|
|
end
|
|
end
|
|
|
|
class GitLabTestRepo < Gitlab::Git::Repository
|
|
def repo
|
|
@repo ||= Grit::Repo.new(Rails.root.join('tmp', 'repositories', 'gitlabhq'))
|
|
end
|
|
|
|
# patch repo size (in mb)
|
|
def size
|
|
12.45
|
|
end
|
|
end
|
|
|
|
module Gitlab
|
|
class Shell
|
|
def add_repository name
|
|
true
|
|
end
|
|
|
|
def mv_repository name, new_name
|
|
true
|
|
end
|
|
|
|
def remove_repository name
|
|
true
|
|
end
|
|
|
|
def add_key id, key
|
|
true
|
|
end
|
|
|
|
def remove_key id, key
|
|
true
|
|
end
|
|
end
|
|
end
|