73 lines
2.1 KiB
Ruby
73 lines
2.1 KiB
Ruby
# -*- encoding : utf-8 -*-
|
|
# This file is copied to spec/ when you run 'rails generate rspec:install'
|
|
ENV["RAILS_ENV"] ||= 'test'
|
|
require File.expand_path("../../config/environment", __FILE__)
|
|
require 'rspec/rails'
|
|
|
|
# Requires supporting ruby files with custom matchers and macros, etc,
|
|
# in spec/support/ and its subdirectories.
|
|
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
|
|
|
|
RSpec.configure do |config|
|
|
# == Mock Framework
|
|
#
|
|
# If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
|
|
#
|
|
# config.mock_with :mocha
|
|
# config.mock_with :flexmock
|
|
config.mock_with :rr
|
|
#config.mock_with :rspec
|
|
|
|
# Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
|
|
config.fixture_path = "#{::Rails.root}/spec/fixtures"
|
|
|
|
# If you're not using ActiveRecord, or you'd prefer not to run each of your
|
|
# examples within a transaction, remove the following line or assign false
|
|
# instead of true.
|
|
config.use_transactional_fixtures = true
|
|
|
|
config.filter_run_excluding :anonymous_access => !(APP_CONFIG['anonymous_access'])
|
|
|
|
end
|
|
|
|
def set_session_for(user=nil)
|
|
current_user = user.is_a?(Symbol) ? FactoryGirl.create(user) : user
|
|
@request.env["devise.mapping"] = :user
|
|
sign_in current_user
|
|
end
|
|
|
|
def http_login(user=nil)
|
|
# FIXME: password constant is a bad choice...
|
|
request.env['HTTP_AUTHORIZATION'] = ActionController::HttpAuthentication::Basic.encode_credentials(user.email,'123456')
|
|
end
|
|
|
|
def stub_symlink_methods
|
|
any_instance_of(Platform, :symlink_directory => true)
|
|
any_instance_of(Platform, :remove_symlink_directory => true)
|
|
end
|
|
|
|
def stub_key_pairs_calls
|
|
stub(BuildServer).import_gpg_key_pair { [0,"1a2b3c"] }
|
|
stub(BuildServer).set_repository_key { 0 }
|
|
stub(BuildServer).rm_repository_key { 0 }
|
|
end
|
|
|
|
def test_git_commit(project)
|
|
project.repo.index.add('test', 'TEST')
|
|
project.repo.index.commit('Test commit')
|
|
end
|
|
|
|
Resque.inline = true
|
|
|
|
# Add testing root_path
|
|
%x(rm -Rf #{APP_CONFIG['git_path']})
|
|
%x(mkdir -p #{APP_CONFIG['git_path']})
|
|
|
|
def fill_project
|
|
%x(cp -Rf #{Rails.root}/spec/tests.git/* #{@project.path}) # maybe FIXME ?
|
|
end
|
|
|
|
def clean_projects_dir
|
|
FileUtils.rm_rf "#{APP_CONFIG['git_path']}"
|
|
end
|