Commit 25eadf0c5bd05deb98f7ea0420fc5c63682cb989

Authored by Jeroen van Baarsen
1 parent 4881d493

Proposal for split testing

lib/tasks/spec.rake
1 -Rake::Task["spec"].clear if Rake::Task.task_defined?('spec') 1 +namespace :testing do
  2 + desc 'GITLAB | Run model specs'
  3 + task :models do
  4 + cmds = [
  5 + %W(rake gitlab:setup),
  6 + %W(rspec spec --tag @models)
  7 + ]
  8 + run_commands(cmds)
  9 + end
  10 +
  11 + desc 'GITLAB | Run feature specs'
  12 + task :features do
  13 + cmds = [
  14 + %W(rake gitlab:setup),
  15 + %W(rspec spec --tag @features)
  16 + ]
  17 + run_commands(cmds)
  18 + end
2 19
3 -desc "GITLAB | Run specs"  
4 -task :spec do  
5 - cmds = [  
6 - %W(rake gitlab:setup),  
7 - %W(rspec spec),  
8 - ] 20 + desc 'GITLAB | Run other specs'
  21 + task :other do
  22 + cmds = [
  23 + %W(rake gitlab:setup),
  24 + %W(rspec spec --tag ~@models --tag ~@features)
  25 + ]
  26 + run_commands(cmds)
  27 + end
9 28
10 - cmds.each do |cmd|  
11 - system({'RAILS_ENV' => 'test', 'force' => 'yes'}, *cmd)  
12 - raise "#{cmd} failed!" unless $?.exitstatus.zero? 29 + def run_commands(cmds)
  30 + cmds.each do |cmd|
  31 + system({'RAILS_ENV' => 'test', 'force' => 'yes'}, *cmd)
  32 + raise "#{cmd} failed!" unless $?.exitstatus.zero?
  33 + end
13 end 34 end
14 end 35 end
spec/features/gitlab_flavored_markdown_spec.rb
1 require 'spec_helper' 1 require 'spec_helper'
2 2
3 -describe "GitLab Flavored Markdown" do 3 +describe "GitLab Flavored Markdown", features: true do
4 let(:project) { create(:project) } 4 let(:project) { create(:project) }
5 let(:issue) { create(:issue, project: project) } 5 let(:issue) { create(:issue, project: project) }
6 let(:merge_request) { create(:merge_request, source_project: project, target_project: project) } 6 let(:merge_request) { create(:merge_request, source_project: project, target_project: project) }
spec/models/assembla_service_spec.rb
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 19
20 require 'spec_helper' 20 require 'spec_helper'
21 21
22 -describe AssemblaService do 22 +describe AssemblaService, models: true do
23 describe "Associations" do 23 describe "Associations" do
24 it { should belong_to :project } 24 it { should belong_to :project }
25 it { should have_one :service_hook } 25 it { should have_one :service_hook }