stepdown 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 28dff0daab83a979840d182b9efdcada6c958861
4
- data.tar.gz: 0e172af55a83cfcd9a50e661fc99c907260f483d
3
+ metadata.gz: 33164129ac3bed55b04982c7468555c3e1058bdb
4
+ data.tar.gz: 96504134c823975da8fe0288ab8bdbda19c1dd99
5
5
  SHA512:
6
- metadata.gz: 942b4276a92f9820cb14c80225eb615155344bbcac4c874b6506f6b2d0afe8a8663e342551f4a0e79573538b5aaaf2d7975925b483a4a57fcb08b1fc6ed8c853
7
- data.tar.gz: 8ea4b89c294210380def272e33ded0a93672c781e20442b5e23aa4cb956d01f8711ccb1113391aef4dd9edcbe1388fa9f164bccd7fa8bb539aa67421ed628ee1
6
+ metadata.gz: 38194d27e8692fec98f6dd292a4f9e80df54c7645b4a728dde67584f2e3378026ab5b48997cc4840366d62032c0bb3493e4af8252a5202d8a0b03d2a2494e56a
7
+ data.tar.gz: aabc5045200206b0c2d8f04aa78de71b8587418288413d90e4330acc26fc716079154fc35ce4bd80d4df954fdf34d4e4e10a1b28caae62c48d99f81c8847df26
@@ -1,41 +1,41 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- stepdown (1.0.0)
5
- bundler (> 1.0)
4
+ stepdown (1.0.1)
5
+ bundler (~> 1.0)
6
6
  gherkin (~> 2.3)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- coderay (1.0.8)
12
- diff-lcs (1.2.4)
13
- gherkin (2.12.1)
11
+ coderay (1.1.0)
12
+ diff-lcs (1.2.5)
13
+ gherkin (2.12.2)
14
14
  multi_json (~> 1.3)
15
15
  method_source (0.8.1)
16
- multi_json (1.7.9)
17
- pry (0.9.10)
18
- coderay (~> 1.0.5)
19
- method_source (~> 0.8)
20
- slop (~> 3.3.1)
21
- rake (10.0.3)
22
- rspec (2.14.1)
23
- rspec-core (~> 2.14.0)
24
- rspec-expectations (~> 2.14.0)
25
- rspec-mocks (~> 2.14.0)
26
- rspec-core (2.14.5)
27
- rspec-expectations (2.14.1)
16
+ multi_json (1.10.1)
17
+ pry (0.10.1)
18
+ coderay (~> 1.1.0)
19
+ method_source (~> 0.8.1)
20
+ slop (~> 3.4)
21
+ rake (10.3.2)
22
+ rspec (2.99.0)
23
+ rspec-core (~> 2.99.0)
24
+ rspec-expectations (~> 2.99.0)
25
+ rspec-mocks (~> 2.99.0)
26
+ rspec-core (2.99.2)
27
+ rspec-expectations (2.99.2)
28
28
  diff-lcs (>= 1.1.3, < 2.0)
29
- rspec-mocks (2.14.3)
29
+ rspec-mocks (2.99.2)
30
30
  sass (3.2.5)
31
- slop (3.3.3)
31
+ slop (3.4.7)
32
32
 
33
33
  PLATFORMS
34
34
  ruby
35
35
 
36
36
  DEPENDENCIES
37
- pry
38
- rake
37
+ pry (~> 0.10)
38
+ rake (~> 10.0)
39
39
  rspec (~> 2.5)
40
40
  sass (~> 3.1)
41
41
  stepdown!
@@ -32,7 +32,7 @@ module Stepdown
32
32
  @features_dir = o
33
33
  end
34
34
 
35
- opts.on("--quiet", "-q", "Supress output") do |o|
35
+ opts.on("--quiet", "-q", "Suppress output") do |o|
36
36
  @quiet = true
37
37
  end
38
38
 
@@ -1,23 +1,9 @@
1
- require 'stepdown/step_group'
2
- require 'stepdown/step_usage'
3
1
  require 'delegate'
4
2
 
5
3
  module Stepdown
6
- class Reporter < Delegator
7
-
4
+ class Reporter < SimpleDelegator
8
5
  def initialize(statistics)
9
- @statistics = statistics
10
- super @statistics
6
+ super
11
7
  end
12
-
13
- def __getobj__
14
- @statistics
15
- end
16
-
17
- def __setobj__(statistics)
18
- @statistics = statistics
19
- end
20
-
21
8
  end
22
9
  end
23
-
@@ -1,3 +1,5 @@
1
+ require 'stepdown/step_group'
2
+ require 'stepdown/step_usage'
1
3
 
2
4
  module Stepdown
3
5
  class Statistics
@@ -18,5 +18,8 @@ module Stepdown
18
18
  self.id == other.id
19
19
  end
20
20
 
21
+ def to_s
22
+ regex.inspect.to_s
23
+ end
21
24
  end
22
- end
25
+ end
@@ -6,7 +6,6 @@ module Stepdown
6
6
 
7
7
  def initialize
8
8
  @steps = {}
9
- @addition_order = []
10
9
  end
11
10
 
12
11
  def add_step(id, regex)
@@ -15,7 +14,6 @@ module Stepdown
15
14
  else
16
15
  @steps[id] = Stepdown::Step.new(id, regex)
17
16
  @steps[id].count = 1
18
- @addition_order << id
19
17
  end
20
18
  end
21
19
 
@@ -24,7 +22,7 @@ module Stepdown
24
22
  end
25
23
 
26
24
  def each
27
- @addition_order.each{|id| yield @steps[id] }
25
+ @steps.each{|id, _| yield @steps[id] }
28
26
  end
29
27
 
30
28
  def [](id)
@@ -35,4 +33,4 @@ module Stepdown
35
33
  @steps.length
36
34
  end
37
35
  end
38
- end
36
+ end
@@ -35,7 +35,7 @@ module Stepdown
35
35
  step_collection[0..10].each do |step|
36
36
 
37
37
  next if step.regex.nil?
38
- base += "a--\"#{CGI.escape(CGI.escapeHTML(step.regex.inspect.to_s))}\" [weight=#{step.count}];"
38
+ base += "a--\"#{CGI.escape(CGI.escapeHTML(step.to_s))}\" [weight=#{step.count}];"
39
39
  #a [label=\"#{grouping.in_steps[0][:step].regex.inspect}\"]; a--b [penwidth=3,weight=2];b--d}"
40
40
  end
41
41
  base += "}"
@@ -18,6 +18,10 @@ module Stepdown
18
18
  define_step(regex,&block)
19
19
  end
20
20
 
21
+ def And(regex,&block)
22
+ define_step(regex,&block)
23
+ end
24
+
21
25
  def define_step(regex,&block)
22
26
  @steps << regex
23
27
  end
@@ -8,7 +8,7 @@ module Stepdown
8
8
  output = File.new(Stepdown.output_directory + '/analysis.txt', "w+")
9
9
 
10
10
  output.puts "Total number of scenarios: #{total_scenarios}"
11
- output.puts "Total numer of steps: #{total_steps}"
11
+ output.puts "Total number of steps: #{total_steps}"
12
12
  output.puts "Unused steps: #{unused_step_count}"
13
13
  output.puts "Steps per scenario: #{steps_per_scenario}"
14
14
  output.puts "Unique steps per scenario: #{unique_steps}"
@@ -18,22 +18,16 @@ module Stepdown
18
18
  usages.each{|use| output.puts used_step_line(use) }
19
19
 
20
20
  output.puts "Unused steps"
21
- unused.each{|use| output.puts unused_step_line(use) }
21
+ unused.each{|use| output.puts use.step }
22
22
 
23
23
  output.close
24
24
 
25
25
  puts "Report output to #{Stepdown.output_directory}/analysis.txt" unless Stepdown.quiet
26
-
27
26
  end
28
27
 
29
28
  def used_step_line(use)
30
- line = [use.step.regex.inspect, use.total_usage, use.number_scenarios, use.use_scenario]
29
+ line = [use.step, use.total_usage, use.number_scenarios, use.use_scenario]
31
30
  line.join("|")
32
31
  end
33
-
34
- def unused_step_line(use)
35
- use.step.regex.inspect
36
- end
37
-
38
32
  end
39
33
  end
@@ -1,3 +1,3 @@
1
1
  module Stepdown
2
- VERSION = "1.0.1"
2
+ VERSION = "1.0.2"
3
3
  end
@@ -57,6 +57,11 @@ describe Stepdown::StepInstance do
57
57
  @step_instance.line_matches("Then matched step").regex.should == /matched step/
58
58
  end
59
59
 
60
+ it "should parse And steps" do
61
+ @step_instance.And(/matched step/)
62
+ @step_instance.line_matches("And matched step").regex.should == /matched step/
63
+ end
64
+
60
65
  end
61
66
 
62
67
  describe "parsing step definitions" do
@@ -81,5 +86,11 @@ describe Stepdown::StepInstance do
81
86
  @step_instance.step_collection.should be_an_instance_of Stepdown::StepCollection
82
87
  @step_instance.step_collection.count.should == 1
83
88
  end
89
+
90
+ it "should define and steps" do
91
+ @step_instance.And(@regex)
92
+ @step_instance.step_collection.should be_an_instance_of Stepdown::StepCollection
93
+ @step_instance.step_collection.count.should == 1
94
+ end
84
95
  end
85
96
  end
@@ -17,11 +17,11 @@ Gem::Specification.new do |s|
17
17
  s.rubyforge_project = "stepdown"
18
18
 
19
19
  s.add_dependency('gherkin', '~> 2.3')
20
- s.add_dependency('bundler', '> 1.0')
20
+ s.add_dependency('bundler', '~> 1.0')
21
21
  s.add_development_dependency('rspec', "~> 2.5")
22
22
  s.add_development_dependency('sass', "~> 3.1")
23
- s.add_development_dependency('rake')
24
- s.add_development_dependency('pry')
23
+ s.add_development_dependency('rake', '~> 10.0')
24
+ s.add_development_dependency('pry', '~> 0.10')
25
25
 
26
26
  s.files = `git ls-files`.split("\n")
27
27
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -21,7 +21,7 @@
21
21
  <% grouping.step_collection.each do |step| %>
22
22
  <tr>
23
23
  <td><%= step.count %></td>
24
- <td><%= CGI.escapeHTML step.regex.inspect %></td>
24
+ <td><%= CGI.escapeHTML step.to_s %></td>
25
25
  </tr>
26
26
  <% end %>
27
27
  </tbody>
@@ -1,6 +1,6 @@
1
1
  <% usages_rest.each do |use| %>
2
2
  <tr>
3
- <td><%= use.step.regex.inspect %></td>
3
+ <td><%= use.step.to_s %></td>
4
4
  <td><%= use.total_usage %></td>
5
5
  <td><%= use.number_scenarios %></td>
6
6
  <td><%= use.use_scenario %></td>
@@ -125,7 +125,7 @@
125
125
 
126
126
  <% usages.each do |use| %>
127
127
  <tr>
128
- <td><%= use.step.regex.inspect %></td>
128
+ <td><%= use.step.to_s %></td>
129
129
  <td><%= use.total_usage %></td>
130
130
  <td><%= use.number_scenarios %></td>
131
131
  <td><%= use.use_scenario %></td>
@@ -144,7 +144,7 @@
144
144
 
145
145
  <% unused.each do |use| %>
146
146
  <tr>
147
- <td><%= use.step.regex.inspect %></td>
147
+ <td><%= use.step.to_s %></td>
148
148
  </tr>
149
149
  <% end %>
150
150
  </tbody>
@@ -193,7 +193,7 @@
193
193
  <% grouping.step_collection.each do |step| %>
194
194
  <tr>
195
195
  <td><%= step.count %></td>
196
- <td><%= CGI.escapeHTML(step.regex.inspect) %></td>
196
+ <td><%= CGI.escapeHTML(step.to_s) %></td>
197
197
  </tr>
198
198
  <% end %>
199
199
  </tbody>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stepdown
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Caffery
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-30 00:00:00.000000000 Z
11
+ date: 2014-09-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gherkin
@@ -28,14 +28,14 @@ dependencies:
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">"
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">"
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.0'
41
41
  - !ruby/object:Gem::Dependency
@@ -70,30 +70,30 @@ dependencies:
70
70
  name: rake
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: '10.0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: '10.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: pry
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: '0.10'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: '0.10'
97
97
  description: Stepdown allows you to see where your most used Cucumber steps are, your
98
98
  unused steps and how they are clustered
99
99
  email: