debian-mirror-gitlab/spec/views/projects/pages_domains/show.html.haml_spec.rb
2019-12-21 20:55:43 +05:30

68 lines
2.1 KiB
Ruby

# frozen_string_literal: true
require 'spec_helper'
describe 'projects/pages_domains/show' do
let(:project) { create(:project, :repository) }
before do
assign(:project, project)
assign(:domain, domain)
end
context 'when auto_ssl is enabled' do
context 'when domain is disabled' do
let(:domain) { create(:pages_domain, :disabled, project: project, auto_ssl_enabled: true) }
it 'shows verification warning' do
render
expect(rendered).to have_content("A Let's Encrypt SSL certificate can not be obtained until your domain is verified.")
end
end
context 'when certificate is absent' do
let(:domain) { create(:pages_domain, :without_key, :without_certificate, project: project, auto_ssl_enabled: true) }
it 'shows alert about time of obtaining certificate' do
render
expect(rendered).to have_content("GitLab is obtaining a Let's Encrypt SSL certificate for this domain. This process can take some time. Please try again later.")
end
end
context 'when certificate is present' do
let(:domain) { create(:pages_domain, :letsencrypt, project: project) }
it 'shows certificate info' do
render
# test just a random part of cert represenations(X509v3 Subject Key Identifier:)
expect(rendered).to have_content("C6:5F:56:4B:10:69:AC:1D:33:D2:26:C9:B3:7A:D7:12:4D:3E:F7:90")
end
end
end
context 'when auto_ssl is disabled' do
context 'when certificate is present' do
let(:domain) { create(:pages_domain, project: project) }
it 'shows certificate info' do
render
# test just a random part of cert represenations(X509v3 Subject Key Identifier:)
expect(rendered).to have_content("C6:5F:56:4B:10:69:AC:1D:33:D2:26:C9:B3:7A:D7:12:4D:3E:F7:90")
end
end
context 'when certificate is absent' do
let(:domain) { create(:pages_domain, :without_certificate, :without_key, project: project) }
it 'shows missing certificate' do
render
expect(rendered).to have_content("missing")
end
end
end
end