Skip to content

Commit

Permalink
Adds parallel_tests rake task
Browse files Browse the repository at this point in the history
Also moves parallel_tests out of development group so it's installed on travis

Comparison on an 8 core Mac:

```
$ bundle exec rake parallel_spec
746 examples, 0 failures, 10 pendings

Took 66 seconds (1:06)
```

Vs.

```
$ bundle exec rake spec
Finished in 3 minutes 4.8 seconds (files took 2.14 seconds to load)
746 examples, 0 failures, 10 pending
```
  • Loading branch information
petems committed Mar 17, 2016
1 parent 146f5af commit b5d8fb2
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 1 deletion.
3 changes: 3 additions & 0 deletions .rspec_parallel
@@ -0,0 +1,3 @@
--format progress
--format ParallelTests::RSpec::RuntimeLogger --out tmp/parallel_runtime_rspec.log
--order random
2 changes: 1 addition & 1 deletion Gemfile
Expand Up @@ -11,10 +11,10 @@ gem 'puppet', ENV['PUPPET_VERSION'] || '~> 3.5'
gem 'metadata-json-lint'
gem 'retries', '~> 0.0.5'
gem 'travis', '~> 1.8'
gem 'parallel_tests'

group :development do
gem 'simplecov'
gem 'parallel_tests'
gem 'ci_reporter'
gem 'debugger', :platform => :mri_19
gem 'debugger-pry', :platform => :mri_19
Expand Down
8 changes: 8 additions & 0 deletions Rakefile
Expand Up @@ -3,6 +3,8 @@ require 'rake'
require 'puppetlabs_spec_helper/rake_tasks'
require 'puppet-lint/tasks/puppet-lint'
require 'puppet-syntax/tasks/puppet-syntax'
require 'parallel_tests'
require 'parallel_tests/cli'

exclude_paths = [
"pkg/**/*",
Expand Down Expand Up @@ -44,6 +46,12 @@ namespace :travis do
end
end

desc "Parallel spec tests"
task :parallel_spec do
Rake::Task[:spec_prep].invoke
ParallelTests::CLI.new.run('--type test -t rspec spec/classes spec/defines spec/unit spec/functions'.split)
Rake::Task[:spec_clean].invoke
end

task :default => [
'travis:lint',
Expand Down

0 comments on commit b5d8fb2

Please sign in to comment.