parallel_tests 0.4.6 → 0.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Readme.md CHANGED
@@ -8,7 +8,7 @@ Setup for Rails
8
8
  As gem
9
9
  sudo gem install parallel_tests
10
10
  # add to Gemfile
11
- gem "parallel_tests"
11
+ gem "parallel_tests", :group=>:development
12
12
 
13
13
  OR as plugin
14
14
  sudo gem install parallel
@@ -18,8 +18,10 @@ OR as plugin
18
18
 
19
19
  As gem
20
20
  sudo gem install parallel_tests
21
- # add to config/environment.rb
21
+ # add to config/environments/development.rb
22
22
  config.gem "parallel_tests"
23
+ # add to Rakefile
24
+ begin; require 'parallel_tests/tasks'; rescue LoadError; end
23
25
 
24
26
  OR as plugin
25
27
 
@@ -126,7 +128,7 @@ Authors
126
128
  ====
127
129
  inspired by [pivotal labs](http://pivotallabs.com/users/miked/blog/articles/849-parallelize-your-rspec-suite)
128
130
 
129
- ###Contributors (alphabetical)
131
+ ### [Contributors](http://github.com/grosser/parallel_tests/contributors)
130
132
  - [Charles Finkel](http://charlesfinkel.com/)
131
133
  - [Indrek Juhkam](http://urgas.eu)
132
134
  - [Jason Morrison](http://jayunit.net)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.6
1
+ 0.4.7
@@ -0,0 +1,68 @@
1
+ namespace :parallel do
2
+ def run_in_parallel(cmd, options)
3
+ count = (options[:count] ? options[:count].to_i : nil)
4
+ executable = File.join(File.dirname(__FILE__), '..', '..', 'bin', 'parallel_test')
5
+ command = "#{executable} --exec '#{cmd}' -n #{count}"
6
+ abort unless system(command)
7
+ end
8
+
9
+ desc "create test databases by running db:create for each test db --> parallel:create[num_cpus]"
10
+ task :create, :count do |t,args|
11
+ run_in_parallel('rake db:create RAILS_ENV=test', args)
12
+ end
13
+
14
+ desc "update test databases by running db:test:prepare for each test db --> parallel:prepare[num_cpus]"
15
+ task :prepare, :count do |t,args|
16
+ run_in_parallel('rake db:test:prepare', args)
17
+ end
18
+
19
+ # when dumping/resetting takes too long
20
+ desc "update test databases by running db:mgrate for each test db --> parallel:migrate[num_cpus]"
21
+ task :migrate, :count do |t,args|
22
+ run_in_parallel('rake db:migrate RAILS_ENV=test', args)
23
+ end
24
+
25
+ # Do not want a development db on integration server.
26
+ # and always dump a complete schema ?
27
+ desc "load dumped schema for each test db --> parallel:load_schema[num_cpus]"
28
+ task :load_schema, :count do |t,args|
29
+ run_in_parallel('rake db:schema:load RAILS_ENV=test', args)
30
+ end
31
+
32
+ ['test', 'spec', 'features'].each do |type|
33
+ desc "run #{type} in parallel with parallel:#{type}[num_cpus]"
34
+ task type, :count, :path_prefix, :options do |t,args|
35
+ $LOAD_PATH << File.expand_path(File.join(File.dirname(__FILE__), '..'))
36
+ require "parallel_tests"
37
+ count, prefix, options = ParallelTests.parse_rake_args(args)
38
+ executable = File.join(File.dirname(__FILE__), '..', '..', 'bin', 'parallel_test')
39
+ command = "#{executable} --type #{type} -n #{count} -p '#{prefix}' -r '#{Rails.root}' -o '#{options}'"
40
+ abort unless system(command) # allow to chain tasks e.g. rake parallel:spec parallel:features
41
+ end
42
+ end
43
+ end
44
+
45
+ #backwards compatability
46
+ #spec:parallel:prepare
47
+ #spec:parallel
48
+ #test:parallel
49
+ namespace :spec do
50
+ namespace :parallel do
51
+ task :prepare, :count do |t,args|
52
+ $stderr.puts "WARNING -- Deprecated! use parallel:prepare"
53
+ Rake::Task['parallel:prepare'].invoke(args[:count])
54
+ end
55
+ end
56
+
57
+ task :parallel, :count, :path_prefix do |t,args|
58
+ $stderr.puts "WARNING -- Deprecated! use parallel:spec"
59
+ Rake::Task['parallel:spec'].invoke(args[:count], args[:path_prefix])
60
+ end
61
+ end
62
+
63
+ namespace :test do
64
+ task :parallel, :count, :path_prefix do |t,args|
65
+ $stderr.puts "WARNING -- Deprecated! use parallel:test"
66
+ Rake::Task['parallel:test'].invoke(args[:count], args[:path_prefix])
67
+ end
68
+ end
@@ -1,68 +1 @@
1
- namespace :parallel do
2
- def run_in_parallel(cmd, options)
3
- count = (options[:count] ? options[:count].to_i : nil)
4
- executable = File.join(File.dirname(__FILE__), '..', '..', 'bin', 'parallel_test')
5
- command = "#{executable} --exec '#{cmd}' -n #{count}"
6
- abort unless system(command)
7
- end
8
-
9
- desc "create test databases by running db:create for each test db --> parallel:create[num_cpus]"
10
- task :create, :count do |t,args|
11
- run_in_parallel('rake db:create RAILS_ENV=test', args)
12
- end
13
-
14
- desc "update test databases by running db:test:prepare for each test db --> parallel:prepare[num_cpus]"
15
- task :prepare, :count do |t,args|
16
- run_in_parallel('rake db:test:prepare', args)
17
- end
18
-
19
- # when dumping/resetting takes too long
20
- desc "update test databases by running db:mgrate for each test db --> parallel:migrate[num_cpus]"
21
- task :migrate, :count do |t,args|
22
- run_in_parallel('rake db:migrate RAILS_ENV=test', args)
23
- end
24
-
25
- # Do not want a development db on integration server.
26
- # and always dump a complete schema ?
27
- desc "load dumped schema for each test db --> parallel:load_schema[num_cpus]"
28
- task :load_schema, :count do |t,args|
29
- run_in_parallel('rake db:schema:load RAILS_ENV=test', args)
30
- end
31
-
32
- ['test', 'spec', 'features'].each do |type|
33
- desc "run #{type} in parallel with parallel:#{type}[num_cpus]"
34
- task type, :count, :path_prefix, :options do |t,args|
35
- $LOAD_PATH << File.expand_path(File.join(File.dirname(__FILE__), '..'))
36
- require "parallel_tests"
37
- count, prefix, options = ParallelTests.parse_rake_args(args)
38
- executable = File.join(File.dirname(__FILE__), '..', '..', 'bin', 'parallel_test')
39
- command = "#{executable} --type #{type} -n #{count} -p '#{prefix}' -r '#{Rails.root}' -o '#{options}'"
40
- abort unless system(command) # allow to chain tasks e.g. rake parallel:spec parallel:features
41
- end
42
- end
43
- end
44
-
45
- #backwards compatability
46
- #spec:parallel:prepare
47
- #spec:parallel
48
- #test:parallel
49
- namespace :spec do
50
- namespace :parallel do
51
- task :prepare, :count do |t,args|
52
- $stderr.puts "WARNING -- Deprecated! use parallel:prepare"
53
- Rake::Task['parallel:prepare'].invoke(args[:count])
54
- end
55
- end
56
-
57
- task :parallel, :count, :path_prefix do |t,args|
58
- $stderr.puts "WARNING -- Deprecated! use parallel:spec"
59
- Rake::Task['parallel:spec'].invoke(args[:count], args[:path_prefix])
60
- end
61
- end
62
-
63
- namespace :test do
64
- task :parallel, :count, :path_prefix do |t,args|
65
- $stderr.puts "WARNING -- Deprecated! use parallel:test"
66
- Rake::Task['parallel:test'].invoke(args[:count], args[:path_prefix])
67
- end
68
- end
1
+ require File.join(File.dirname(__FILE__), "/../parallel_tests/tasks")
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{parallel_tests}
8
- s.version = "0.4.6"
8
+ s.version = "0.4.7"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Michael Grosser"]
@@ -26,6 +26,7 @@ Gem::Specification.new do |s|
26
26
  "lib/parallel_tests.rb",
27
27
  "lib/parallel_tests/grouper.rb",
28
28
  "lib/parallel_tests/railtie.rb",
29
+ "lib/parallel_tests/tasks.rb",
29
30
  "lib/tasks/parallel_tests.rake",
30
31
  "parallel_tests.gemspec",
31
32
  "spec/integration_spec.rb",
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 4
8
- - 6
9
- version: 0.4.6
8
+ - 7
9
+ version: 0.4.7
10
10
  platform: ruby
11
11
  authors:
12
12
  - Michael Grosser
@@ -53,6 +53,7 @@ files:
53
53
  - lib/parallel_tests.rb
54
54
  - lib/parallel_tests/grouper.rb
55
55
  - lib/parallel_tests/railtie.rb
56
+ - lib/parallel_tests/tasks.rb
56
57
  - lib/tasks/parallel_tests.rake
57
58
  - parallel_tests.gemspec
58
59
  - spec/integration_spec.rb