
- Re-factor - Remove code for notifications - Remove addons - Remove travis-core gem. - Ignore logs directory only - Move core tests to spec/lib
26 lines
836 B
Ruby
26 lines
836 B
Ruby
describe Travis::Services::RegenerateRepoKey do
|
|
let(:user) { User.first || Factory(:user) }
|
|
let!(:repo) { Factory(:repository, :owner_name => 'travis-ci', :name => 'travis-core') }
|
|
let(:service) { described_class.new(user, :id => repo.id) }
|
|
|
|
before :each do
|
|
service.expects(:service).with(:find_repo, :id => repo.id).returns(stub(:run => repo))
|
|
user.permissions.create!(:repository_id => repo.id, :admin => true)
|
|
end
|
|
|
|
describe 'given the request is authorized' do
|
|
it 'regenerates the key' do
|
|
repo.expects(:regenerate_key!)
|
|
service.run.should == repo.reload.key
|
|
end
|
|
end
|
|
|
|
describe 'given the request is not authorized' do
|
|
it 'does not regenerate key' do
|
|
user.permissions.destroy_all
|
|
repo.expects(:regenerate_key!).never
|
|
service.run.should be_falsey
|
|
end
|
|
end
|
|
end
|