diff --git a/.travis.yml b/.travis.yml index 65527331128a0d6050e11108579a4d8762c69525..9bab337f336541a553d415a6c8eadf36e899bdf8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,10 +5,12 @@ env: matrix: - TASK=spinach DB=mysql - TASK=spec:api DB=mysql + - TASK=spec:feature DB=mysql - TASK=spec:other DB=mysql - TASK=jasmine:ci DB=mysql - TASK=spinach DB=postgresql - TASK=spec:api DB=postgresql + - TASK=spec:feature DB=postgresql - TASK=spec:other DB=postgresql - TASK=jasmine:ci DB=postgresql before_install: diff --git a/lib/tasks/spec.rake b/lib/tasks/spec.rake index b760a607f7e1432a6d2ce9e2499e29cd54dee208..49fbe1bd47ae7f19b0240e9734d4283f93bb9c70 100644 --- a/lib/tasks/spec.rake +++ b/lib/tasks/spec.rake @@ -1,7 +1,7 @@ Rake::Task["spec"].clear if Rake::Task.task_defined?('spec') namespace :spec do - desc 'GITLAB | Run feature specs' + desc 'GITLAB | Run request specs' task :api do cmds = [ %W(rake gitlab:setup), @@ -10,11 +10,20 @@ namespace :spec do run_commands(cmds) end + desc 'GITLAB | Run feature specs' + task :feature do + cmds = [ + %W(rake gitlab:setup), + %W(rspec spec --tag @feature) + ] + run_commands(cmds) + end + desc 'GITLAB | Run other specs' task :other do cmds = [ %W(rake gitlab:setup), - %W(rspec spec --tag ~@api) + %W(rspec spec --tag ~@api --tag ~@feature) ] run_commands(cmds) end diff --git a/spec/features/admin/admin_hooks_spec.rb b/spec/features/admin/admin_hooks_spec.rb index 102a1b928f58a3b9020a4aa156ff6c6cf310f289..120448ae3352378357cb964b187a04dfecd5101d 100644 --- a/spec/features/admin/admin_hooks_spec.rb +++ b/spec/features/admin/admin_hooks_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Admin::Hooks" do +describe "Admin::Hooks", feature: true do before do @project = create(:project) login_as :admin diff --git a/spec/features/admin/admin_projects_spec.rb b/spec/features/admin/admin_projects_spec.rb index 233708912446cf5a6380123816ecfde39b440a7d..3b3d027ab75c6f440fcc017f8c4c97c4f2c3abb1 100644 --- a/spec/features/admin/admin_projects_spec.rb +++ b/spec/features/admin/admin_projects_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Admin::Projects" do +describe "Admin::Projects", feature: true do before do @project = create(:project) login_as :admin diff --git a/spec/features/admin/admin_users_spec.rb b/spec/features/admin/admin_users_spec.rb index 8d69b595aee80cce5a6cb444f004410b90e52087..1aba40966c471e99ec3b3ac2031d70f6c70cf3b6 100644 --- a/spec/features/admin/admin_users_spec.rb +++ b/spec/features/admin/admin_users_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Admin::Users" do +describe "Admin::Users", feature: true do before { login_as :admin } describe "GET /admin/users" do diff --git a/spec/features/admin/security_spec.rb b/spec/features/admin/security_spec.rb index 6306832628b8ba6aac2bbcd6b197d501341bccc9..21b0d8b965eeff3dae60d04f5c5ecc8a12ae2b15 100644 --- a/spec/features/admin/security_spec.rb +++ b/spec/features/admin/security_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Admin::Projects" do +describe "Admin::Projects", feature: true do describe "GET /admin/projects" do subject { admin_projects_path } diff --git a/spec/features/atom/dashboard_issues_spec.rb b/spec/features/atom/dashboard_issues_spec.rb index 62f4469034957ba42d745337117e8660ec9d07ab..9fd2933b2cc97063ca68db976b45d4bbfeb88abf 100644 --- a/spec/features/atom/dashboard_issues_spec.rb +++ b/spec/features/atom/dashboard_issues_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Dashboard Issues Feed" do +describe "Dashboard Issues Feed", feature: true do describe "GET /issues" do let!(:user) { create(:user) } let!(:project1) { create(:project) } diff --git a/spec/features/atom/dashboard_spec.rb b/spec/features/atom/dashboard_spec.rb index 6257ad5c8958018eb3c30f9216e1745023f0f4a7..e5d9f8ab5d5c7ac3e5f16ebb1e56e5353a06aa2e 100644 --- a/spec/features/atom/dashboard_spec.rb +++ b/spec/features/atom/dashboard_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Dashboard Feed" do +describe "Dashboard Feed", feature: true do describe "GET /" do let!(:user) { create(:user) } diff --git a/spec/features/atom/issues_spec.rb b/spec/features/atom/issues_spec.rb index c9bbdad380f54c6232183ba308b55115389e16d0..6ff03ec862cf3ddd8e208f285ae94f8ee4c71249 100644 --- a/spec/features/atom/issues_spec.rb +++ b/spec/features/atom/issues_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Issues Feed" do +describe "Issues Feed", feature: true do describe "GET /issues" do let!(:user) { create(:user) } let!(:project) { create(:project) } diff --git a/spec/features/gitlab_flavored_markdown_spec.rb b/spec/features/gitlab_flavored_markdown_spec.rb index 07be6b81441110157845a93fe88902a88f4e3efe..9f50d1c97384666afbb7d0e8764258596788ae68 100644 --- a/spec/features/gitlab_flavored_markdown_spec.rb +++ b/spec/features/gitlab_flavored_markdown_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "GitLab Flavored Markdown", features: true do +describe "GitLab Flavored Markdown", feature: true do let(:project) { create(:project) } let(:issue) { create(:issue, project: project) } let(:merge_request) { create(:merge_request, source_project: project, target_project: project) } diff --git a/spec/features/issues_spec.rb b/spec/features/issues_spec.rb index b9dab7846b17096c2ef61cc6817acbdd8a644fd8..e62517ad710ea56132a443c3657b9cb7ef18766b 100644 --- a/spec/features/issues_spec.rb +++ b/spec/features/issues_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Issues" do +describe "Issues", feature: true do let(:project) { create(:project) } before do diff --git a/spec/features/notes_on_merge_requests_spec.rb b/spec/features/notes_on_merge_requests_spec.rb index 25a86b11fa9d9a3cdb0b50b2d700e3b0def0db2a..cfb6deb1834eb931a61ce73960002323a65b0f9d 100644 --- a/spec/features/notes_on_merge_requests_spec.rb +++ b/spec/features/notes_on_merge_requests_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "On a merge request", js: true do +describe "On a merge request", js: true, feature: true do let!(:merge_request) { create(:merge_request, :simple) } let!(:project) { merge_request.source_project } let!(:note) { create(:note_on_merge_request, :with_attachment, project: project) } diff --git a/spec/features/profile_spec.rb b/spec/features/profile_spec.rb index b67ce3c67f187b23e4996d1932796bb279e6eec8..e8364bbb96290c395b2ae6590fcdf881aa4e6125 100644 --- a/spec/features/profile_spec.rb +++ b/spec/features/profile_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Profile account page" do +describe "Profile account page", feature: true do before(:each) { enable_observers } after(:each) {disable_observers} let(:user) { create(:user) } diff --git a/spec/features/projects_spec.rb b/spec/features/projects_spec.rb index 9d5f9d5a2e244fedd44fbbd78a9ead4544eb564a..1e24782c39ae0f46c45e12d5fcb4edb0287492af 100644 --- a/spec/features/projects_spec.rb +++ b/spec/features/projects_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Projects" do +describe "Projects", feature: true do before(:each) { enable_observers } after(:each) {disable_observers} before { login_as :user } diff --git a/spec/features/search_spec.rb b/spec/features/search_spec.rb index 3ca59da493bfff0bb5785cc2020b8d9ba0399f7f..f12eb124296e863ea9736062183cf4ef9d00ffa3 100644 --- a/spec/features/search_spec.rb +++ b/spec/features/search_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Search" do +describe "Search", feature: true do before do ActiveRecord::Base.observers.enable(:user_observer) login_as :user diff --git a/spec/features/security/dashboard_access_spec.rb b/spec/features/security/dashboard_access_spec.rb index adec5926c6f68bb629faa841651625d72f6e2f78..1cca82cef64316f5fcf92b7030527667e18955a3 100644 --- a/spec/features/security/dashboard_access_spec.rb +++ b/spec/features/security/dashboard_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Dashboard access" do +describe "Dashboard access", feature: true do describe "GET /dashboard" do subject { dashboard_path } diff --git a/spec/features/security/group/group_access_spec.rb b/spec/features/security/group/group_access_spec.rb index c262d76ab54446231da1d6da2c9358bce9715ed7..b65e1d2dbf687c66b03c497c17c4dd08b95291ca 100644 --- a/spec/features/security/group/group_access_spec.rb +++ b/spec/features/security/group/group_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Group access" do +describe "Group access", feature: true do describe "GET /projects/new" do it { new_group_path.should be_allowed_for :admin } it { new_group_path.should be_allowed_for :user } diff --git a/spec/features/security/group/internal_group_access_spec.rb b/spec/features/security/group/internal_group_access_spec.rb index 79a6aee41b58de6c0b7f313f167ec3012dfb21cf..da5c6eb4e911811ac6c6feaa07377f7c36075101 100644 --- a/spec/features/security/group/internal_group_access_spec.rb +++ b/spec/features/security/group/internal_group_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Group with internal project access" do +describe "Group with internal project access", feature: true do describe "Group" do let(:group) { create(:group) } diff --git a/spec/features/security/group/mixed_group_access_spec.rb b/spec/features/security/group/mixed_group_access_spec.rb index 028cd32d2bbf1d50a94435e410c9b60d7e075962..c9889d99590c2f07febcf00f3b33812f97479fe2 100644 --- a/spec/features/security/group/mixed_group_access_spec.rb +++ b/spec/features/security/group/mixed_group_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Group access" do +describe "Group access", feature: true do describe "Group" do let(:group) { create(:group) } diff --git a/spec/features/security/group/public_group_access_spec.rb b/spec/features/security/group/public_group_access_spec.rb index f0ed7649eb5b74e68721807a2170542a9d97d631..2e76ab154ff13dec8d7ad65862ccc0657cf9a66f 100644 --- a/spec/features/security/group/public_group_access_spec.rb +++ b/spec/features/security/group/public_group_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Group with public project access" do +describe "Group with public project access", feature: true do describe "Group" do let(:group) { create(:group) } diff --git a/spec/features/security/profile_access_spec.rb b/spec/features/security/profile_access_spec.rb index 078c257538fe197666ef7210a0c1808fb7f5e769..4efc0ffdcd3844a9b1978a60acaa27413cd484a9 100644 --- a/spec/features/security/profile_access_spec.rb +++ b/spec/features/security/profile_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Users Security" do +describe "Users Security", feature: true do describe "Project" do before do @u1 = create(:user) diff --git a/spec/features/security/project/internal_access_spec.rb b/spec/features/security/project/internal_access_spec.rb index 152cf66dcfda57c3ff9ea09800982c639f23858a..f6ab47ed91ba90f2bdf22946bf1957f681117ea3 100644 --- a/spec/features/security/project/internal_access_spec.rb +++ b/spec/features/security/project/internal_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Internal Project Access" do +describe "Internal Project Access", feature: true do let(:project) { create(:project, :internal) } let(:master) { create(:user) } diff --git a/spec/features/security/project/private_access_spec.rb b/spec/features/security/project/private_access_spec.rb index 0402ff3973528b433f6384b7b0e995872eec07e3..8a0fcb8e9fffae71633dc58da2ed2b3ed2bf2467 100644 --- a/spec/features/security/project/private_access_spec.rb +++ b/spec/features/security/project/private_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Private Project Access" do +describe "Private Project Access", feature: true do let(:project) { create(:project) } let(:master) { create(:user) } diff --git a/spec/features/security/project/public_access_spec.rb b/spec/features/security/project/public_access_spec.rb index 7e6a39fad69faa0c640ce3993f5330b0985ac7e9..eb511bfefe02b8ecf01b8acde6b6eda72da0c7e5 100644 --- a/spec/features/security/project/public_access_spec.rb +++ b/spec/features/security/project/public_access_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe "Public Project Access" do +describe "Public Project Access", feature: true do let(:project) { create(:project) } let(:master) { create(:user) } diff --git a/spec/features/users_spec.rb b/spec/features/users_spec.rb index ed9e44fb47e1d79fdca3e2bfd004d2a55a1787c7..7b831c48611f67a675796eba5670a1777070198c 100644 --- a/spec/features/users_spec.rb +++ b/spec/features/users_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Users' do +describe 'Users', feature: true do describe "GET /users/sign_up" do before do Gitlab.config.gitlab.stub(:signup_enabled).and_return(true)