run some specs in nonselenium rake tasks with 1 thread
Change-Id: I9f0bad276d2e6a410930b01942253754547cca33 Reviewed-on: https://gerrit.instructure.com/11282 Reviewed-by: Bryan Madsen <bryan@instructure.com> Tested-by: Jenkins <jenkins@instructure.com>
This commit is contained in:
parent
62bc3faeab
commit
0821ab2903
|
@ -2,14 +2,43 @@
|
|||
unless ARGV.any? { |a| a =~ /\Agems/ }
|
||||
|
||||
namespace :parallel do
|
||||
task :nonselenium, :count do |t, args|
|
||||
task :nonseleniumparallel, :count do |t, args|
|
||||
require "parallelized_specs"
|
||||
count = args[:count]
|
||||
test_files = FileList['vendor/plugins/*/spec_canvas/**/*_spec.rb'].exclude('vendor/plugins/*/spec_canvas/selenium/*_spec.rb') + FileList['spec/**/*_spec.rb'].exclude('spec/selenium/*_spec.rb')
|
||||
single_thread_files =
|
||||
[
|
||||
'vendor/plugins/wiziq/spec_canvas/aglive_com_util_spec.rb',
|
||||
'spec/controllers/files_controller_spec.rb',
|
||||
'vendor/plugins/multiple_root_accounts/spec_canvas/integration/quotas_spec.rb',
|
||||
'vendor/plugins/wiziq/spec_canvas/wiziq_conference_spec.rb',
|
||||
'vendor/plugins/multiple_root_accounts/spec_canvas/lib/shard_importer_spec.rb',
|
||||
'vendor/plugins/respondus_soap_endpoint/spec_canvas/integration/respondus_endpoint_spec.rb',
|
||||
'spec/apis/api_spec_helper.rb',
|
||||
'spec/apis/general_api_spec.rb',
|
||||
'spec/apis/user_content_spec.rb',
|
||||
'spec/apis/v1/groups_api_spec.rb',
|
||||
'spec/apis/v1/submissions_api_spec.rb',
|
||||
'spec/integration/files_spec.rb',
|
||||
'spec/lib/acts_as_list.rb',
|
||||
'spec/lib/content_zipper_spec.rb',
|
||||
'spec/lib/turnitin_spec.rb',
|
||||
'spec/models/attachment_spec.rb',
|
||||
'spec/models/course_spec.rb',
|
||||
'spec/models/eportfolio_entry_spec.rb',
|
||||
'spec/models/media_object_spec.rb',
|
||||
'spec/models/zip_file_import_spec.rb'
|
||||
]
|
||||
test_files = FileList['vendor/plugins/*/spec_canvas/**/*_spec.rb'].exclude('vendor/plugins/*/spec_canvas/selenium/*_spec.rb') + FileList['spec/**/*_spec.rb'].exclude('spec/selenium/**/*_spec.rb')
|
||||
single_thread_files.each { |filename| test_files.delete(filename) } #need to exclude these tests from running in parallel because they have dependencies that break the spces when run in parallel
|
||||
test_files.map! { |f| "#{Rails.root}/#{f}" }
|
||||
Rake::Task['parallel:spec'].invoke(count, '', '', test_files.join(' '))
|
||||
end
|
||||
|
||||
task :nonselenium, :count do |t, args|
|
||||
Rake::Task['spec:single'].invoke #first rake task to run the files that fail in parallel in a single thread
|
||||
Rake::Task['parallel:nonseleniumparallel'].invoke(args[:count])
|
||||
end
|
||||
|
||||
task :selenium, :count do |t, args|
|
||||
require "parallelized_specs"
|
||||
count = args[:count]
|
||||
|
|
|
@ -78,6 +78,34 @@ unless ARGV.any? { |a| a =~ /\Agems/ }
|
|||
Rake::Task["spec"].execute
|
||||
end
|
||||
|
||||
desc "Run non-selenium files in a single thread"
|
||||
single_thread_files =
|
||||
[
|
||||
'vendor/plugins/wiziq/spec_canvas/aglive_com_util_spec.rb',
|
||||
'spec/controllers/files_controller_spec.rb',
|
||||
'vendor/plugins/multiple_root_accounts/spec_canvas/integration/quotas_spec.rb',
|
||||
'vendor/plugins/wiziq/spec_canvas/wiziq_conference_spec.rb',
|
||||
'vendor/plugins/multiple_root_accounts/spec_canvas/lib/shard_importer_spec.rb',
|
||||
'vendor/plugins/respondus_soap_endpoint/spec_canvas/integration/respondus_endpoint_spec.rb',
|
||||
'spec/apis/api_spec_helper.rb',
|
||||
'spec/apis/general_api_spec.rb',
|
||||
'spec/apis/user_content_spec.rb',
|
||||
'spec/apis/v1/groups_api_spec.rb',
|
||||
'spec/apis/v1/submissions_api_spec.rb',
|
||||
'spec/integration/files_spec.rb',
|
||||
'spec/lib/acts_as_list.rb',
|
||||
'spec/lib/content_zipper_spec.rb',
|
||||
'spec/lib/turnitin_spec.rb',
|
||||
'spec/models/attachment_spec.rb',
|
||||
'spec/models/course_spec.rb',
|
||||
'spec/models/eportfolio_entry_spec.rb',
|
||||
'spec/models/media_object_spec.rb',
|
||||
'spec/models/zip_file_import_spec.rb'
|
||||
]
|
||||
Spec::Rake::SpecTask.new(:single) do |t|
|
||||
t.spec_files = single_thread_files
|
||||
end
|
||||
|
||||
desc "Run all specs in spec directory with RCov (excluding plugin specs)"
|
||||
Spec::Rake::SpecTask.new(:rcov) do |t|
|
||||
t.spec_opts = ['--options', "\"#{RAILS_ROOT}/spec/spec.opts\""]
|
||||
|
|
|
@ -868,6 +868,7 @@ describe Course, "backup" do
|
|||
end
|
||||
|
||||
it "should not cross learning outcomes with learning outcome groups in the association" do
|
||||
pending('fails when being run in the single thread rake task')
|
||||
# set up two courses with two outcomes
|
||||
course = course_model
|
||||
default_group = LearningOutcomeGroup.default_for(course)
|
||||
|
|
Loading…
Reference in New Issue