module Lolcommits::TestHelpers::GitRepo

Public Instance Methods

commit_repo_with_message(message = 'test message', file_name: 'test.txt', file_content: 'testing') click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 28
def commit_repo_with_message(message = 'test message', file_name: 'test.txt', file_content: 'testing')
  setup_repo unless repo_exists?
  `echo '#{file_content}' >> #{repo_path}/#{file_name}`
  `cd #{repo_path} && git add #{file_name}`
  `cd #{repo_path} && git commit -m "#{message}"`
end
in_repo() { |block| ... } click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 35
def in_repo(&block)
  return unless repo_exists?

  Dir.chdir(File.expand_path(repo_path)) do
    yield block
  end
end
last_commit() click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 18
def last_commit
  repo.log.first
end
repo() click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 6
def repo
  @repo ||= Git.open(repo_path)
end
repo_exists?() click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 14
def repo_exists?
  File.directory?(File.expand_path(repo_path, '.git'))
end
repo_path() click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 10
def repo_path
  '~/.lolcommits/plugin-test-repo'
end
setup_repo() click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 22
def setup_repo
  return if repo_exists?

  `git init --quiet #{repo_path}`
end
teardown_repo() click to toggle source
# File lib/lolcommits/test_helpers/git_repo.rb, line 43
def teardown_repo
  `rm -rf #{repo_path}`
end