parallelized_specs 0.4.34 → 0.4.35

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/Rakefile CHANGED
@@ -12,7 +12,7 @@ begin
12
12
  gem.email = "jake@instructure.com"
13
13
  gem.homepage = "http://github.com/jakesorce/#{gem.name}"
14
14
  gem.authors = "Jake Sorce, Bryan Madsen, Shawn Meredith"
15
- gem.version = "0.4.34"
15
+ gem.version = "0.4.35"
16
16
  end
17
17
  Jeweler::GemcutterTasks.new
18
18
  rescue LoadError
@@ -107,6 +107,8 @@ class ParallelizedSpecs
107
107
  run_tests(group, groups.index(group), options)
108
108
  end
109
109
 
110
+ slowest_spec_determination("#{RAILS_ROOT}/tmp/parallel_log/slowest_specs.log")
111
+
110
112
  #parse and print results
111
113
  results = find_results(test_results.map { |result| result[:stdout] }*"")
112
114
  #puts ""
@@ -469,5 +471,33 @@ class ParallelizedSpecs
469
471
  runtime_setup
470
472
  start_reruns
471
473
  end
474
+
475
+ def self.slowest_spec_determination(file)
476
+ if File.exists?(file)
477
+ spec_durations = []
478
+ File.open(file).each_line do |line|
479
+ spec_durations << line
480
+ end
481
+ File.open(file, 'w') { |f| f.truncate(0) }
482
+ populate_slowest_specs(spec_durations, file)
483
+ else
484
+ puts "slow spec profiling was not enabled"
485
+ end
486
+ end
487
+
488
+ def self.populate_slowest_specs(spec_durations, file)
489
+ slowest_specs = []
490
+ spec_durations.each do |spec|
491
+ time = spec.match(/.*\d/).to_s
492
+ if time.to_f >= 30
493
+ slowest_specs << spec
494
+ end
495
+ end
496
+ slowest_specs.each do |slow_spec|
497
+ File.open(file, 'a+') { |f| f.puts slow_spec }
498
+ end
499
+ end
472
500
  end
473
501
 
502
+
503
+
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "parallelized_specs"
8
- s.version = "0.4.34"
8
+ s.version = "0.4.35"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jake Sorce, Bryan Madsen, Shawn Meredith"]
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: parallelized_specs
3
3
  version: !ruby/object:Gem::Version
4
- hash: 75
4
+ hash: 73
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 4
9
- - 34
10
- version: 0.4.34
9
+ - 35
10
+ version: 0.4.35
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jake Sorce, Bryan Madsen, Shawn Meredith