houdini/spec/controllers/static_controller_spec.rb

49 lines
1.1 KiB
Ruby

# frozen_string_literal: true
# License: AGPL-3.0-or-later WITH Web-Template-Output-Additional-Permission-3.0-or-later
require 'rails_helper'
RSpec.describe StaticController, type: :controller do
describe '.ccs' do
around(:each) do |example|
example.run
Settings.reload!
end
describe 'local_tar_gz' do
before (:each) do
Settings.merge!(
ccs: {
ccs_method: 'local_tar_gz'
}
)
end
it 'fails on git archive' do
expect(Kernel).to receive(:system).and_return(false)
get('ccs')
expect(response.status).to eq 500
end
end
describe 'github' do
before (:each) do
Settings.merge!(
ccs: {
ccs_method: 'github',
options: {
account: 'account',
repo: 'repo'
}
}
)
end
it 'setup github' do
expect(File).to receive(:read).with("#{Rails.root}/CCS_HASH").and_return("hash\n")
get('ccs')
expect(response).to redirect_to 'https://github.com/account/repo/tree/hash'
end
end
end
end