diff options
author | Douwe Maan <douwe@gitlab.com> | 2017-02-06 18:20:38 +0000 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2017-02-06 18:20:38 +0000 |
commit | c07311d486fd177bff6df8b2f912dc91dcadac4e (patch) | |
tree | 614735e4f3d0a495abc2ac84573fc55e4a9bf0db /spec/controllers | |
parent | 853314c1936506573f5b6c520fce6fd43b998229 (diff) | |
parent | b988faaf85c8e68d501f242b980e5e79a00e2b15 (diff) | |
download | gitlab-ce-c07311d486fd177bff6df8b2f912dc91dcadac4e.tar.gz |
Merge branch 'jej-pages-to-ce' into 'master'
Adding GitLab Pages to CE
Closes #14605, gitlab-com/infrastructure#1058, gitlab-ee#1333, and #323
See merge request !8463
Diffstat (limited to 'spec/controllers')
-rw-r--r-- | spec/controllers/projects/pages_domains_controller_spec.rb | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/spec/controllers/projects/pages_domains_controller_spec.rb b/spec/controllers/projects/pages_domains_controller_spec.rb new file mode 100644 index 00000000000..2362df895a8 --- /dev/null +++ b/spec/controllers/projects/pages_domains_controller_spec.rb @@ -0,0 +1,64 @@ +require 'spec_helper' + +describe Projects::PagesDomainsController do + let(:user) { create(:user) } + let(:project) { create(:project) } + + let(:request_params) do + { + namespace_id: project.namespace, + project_id: project + } + end + + before do + sign_in(user) + project.team << [user, :master] + end + + describe 'GET show' do + let!(:pages_domain) { create(:pages_domain, project: project) } + + it "displays the 'show' page" do + get(:show, request_params.merge(id: pages_domain.domain)) + + expect(response).to have_http_status(200) + expect(response).to render_template('show') + end + end + + describe 'GET new' do + it "displays the 'new' page" do + get(:new, request_params) + + expect(response).to have_http_status(200) + expect(response).to render_template('new') + end + end + + describe 'POST create' do + let(:pages_domain_params) do + build(:pages_domain, :with_certificate, :with_key).slice(:key, :certificate, :domain) + end + + it "creates a new pages domain" do + expect do + post(:create, request_params.merge(pages_domain: pages_domain_params)) + end.to change { PagesDomain.count }.by(1) + + expect(response).to redirect_to(namespace_project_pages_path(project.namespace, project)) + end + end + + describe 'DELETE destroy' do + let!(:pages_domain) { create(:pages_domain, project: project) } + + it "deletes the pages domain" do + expect do + delete(:destroy, request_params.merge(id: pages_domain.domain)) + end.to change { PagesDomain.count }.by(-1) + + expect(response).to redirect_to(namespace_project_pages_path(project.namespace, project)) + end + end +end |