stepdown 0.6.3 → 0.6.4

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/.gitignore CHANGED
@@ -1,7 +1,6 @@
1
1
  .idea/
2
2
  .sass-cache
3
3
  *.html
4
- *.css
5
4
  *.rbc
6
5
  *.gem
7
6
  .rvmrc
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ rvm:
2
+ - 1.8.7
3
+ - 1.9.2
4
+ - 1.9.3
data/Gemfile CHANGED
@@ -1,6 +1,5 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
- gem 'haml', '> 2.0.0'
4
3
  gem 'gherkin', '> 2.3'
5
4
  gem 'bundler', '> 1.0'
6
5
 
@@ -8,4 +7,5 @@ group :development,:test do
8
7
  gem 'rake'
9
8
  gem 'rspec', '~> 2.5.0'
10
9
  gem 'rcov', '~> 0.9.9'
10
+ gem 'sass', '~> 3.1.0'
11
11
  end
data/Gemfile.lock CHANGED
@@ -4,7 +4,6 @@ GEM
4
4
  diff-lcs (1.1.2)
5
5
  gherkin (2.4.6)
6
6
  json (>= 1.4.6)
7
- haml (3.1.2)
8
7
  json (1.5.3)
9
8
  rake (0.9.2)
10
9
  rcov (0.9.10)
@@ -16,6 +15,7 @@ GEM
16
15
  rspec-expectations (2.5.0)
17
16
  diff-lcs (~> 1.1.2)
18
17
  rspec-mocks (2.5.0)
18
+ sass (3.1.7)
19
19
 
20
20
  PLATFORMS
21
21
  ruby
@@ -23,7 +23,7 @@ PLATFORMS
23
23
  DEPENDENCIES
24
24
  bundler (> 1.0)
25
25
  gherkin (> 2.3)
26
- haml (> 2.0.0)
27
26
  rake
28
27
  rcov (~> 0.9.9)
29
28
  rspec (~> 2.5.0)
29
+ sass (~> 3.1.0)
data/History.txt CHANGED
@@ -1,3 +1,8 @@
1
+ == 0.6.4 2011-10-06
2
+ * remove HAML, SASS requirement
3
+ * fix broken steps on 1.9.2
4
+ * fix errors with < 10 items for a statistic
5
+
1
6
  == 0.6.3 2011-08-16
2
7
  * update dependant gems, be less restrictive on versions
3
8
  * adjust statistics interface to improve metric_fu integration
@@ -1,7 +1,6 @@
1
1
  require 'fileutils'
2
2
  require 'stepdown/reporter'
3
- require 'haml'
4
- require 'sass'
3
+ require 'erb'
5
4
 
6
5
  module Stepdown
7
6
  class HTMLReporter < Reporter
@@ -9,34 +8,27 @@ module Stepdown
9
8
  def output_overview()
10
9
  puts "Generating report..." unless Stepdown.quiet
11
10
  FileUtils.mkdir_p(Stepdown.output_directory)
12
- copy_files
11
+ copy_files()
13
12
 
14
- ["index", "_unused", "_grouping", "_empty", "_usages"].each{ |template| write_html(template) }
15
-
16
- template = File.open(File.expand_path(File.dirname(__FILE__)) + '/../../templates/style.sass').read
17
- sass_engine = Sass::Engine.new(template)
18
-
19
- out = File.new(Stepdown.output_directory + '/style.css', 'w+')
20
- out.puts sass_engine.render
21
-
22
- out.close
13
+ ["index", "_empty", "_unused", "_grouping", "_usages"].each { |template| write_html_from_erb(template) }
23
14
 
24
15
  puts "\nReport output to #{Stepdown.output_directory}/index.html" unless Stepdown.quiet
25
16
  end
26
17
 
27
18
  protected
28
19
 
29
- def write_html(template)
30
- file = File.open(File.expand_path(File.dirname(__FILE__)) + "/../../templates/#{template}.html.haml").read()
31
- engine = Haml::Engine.new(file)
20
+ def write_html_from_erb(template)
21
+ file = File.open(File.expand_path(File.dirname(__FILE__)) + "/../../templates/#{template}.html.erb")
22
+ erb = ERB.new(file.read())
32
23
 
24
+ file.close
33
25
  out = File.new(Stepdown.output_directory + "/#{template}.html",'w+')
34
- out.puts engine.render(self)
26
+ out.puts erb.result(binding())
35
27
  out.close
36
28
  end
37
29
 
38
30
  def copy_files
39
- ['step_down.js', 'jquery-1.6.1.min.js', 'bluff-min.js', 'excanvas.js', 'js-class.js'].each do |file|
31
+ ['step_down.js', 'jquery-1.6.1.min.js', 'bluff-min.js', 'excanvas.js', 'js-class.js', 'stepdown.css'].each do |file|
40
32
  src = File.expand_path("#{File.dirname(__FILE__)}/../../public/#{file}")
41
33
  FileUtils.cp(src, File.join(Stepdown.output_directory, "#{file}"))
42
34
  end
@@ -27,7 +27,7 @@ module Stepdown
27
27
  end
28
28
 
29
29
  def groupings_rest
30
- groupings[10..groupings.length]
30
+ groupings[10..groupings.length] || []
31
31
  end
32
32
 
33
33
  def groupings_top(limit = 10)
@@ -98,7 +98,7 @@ module Stepdown
98
98
  end
99
99
 
100
100
  def usages_rest
101
- usages[10..usages.length]
101
+ usages[10..usages.length] || []
102
102
  end
103
103
 
104
104
  def step_usages
@@ -110,7 +110,7 @@ module Stepdown
110
110
  end
111
111
 
112
112
  def unused_rest
113
- unused[10..unused.length]
113
+ unused[10..unused.length] || []
114
114
  end
115
115
 
116
116
  def unused_top(limit = 10)
@@ -145,7 +145,7 @@ module Stepdown
145
145
  end
146
146
 
147
147
  def empty_rest
148
- empty[10..empty.length]
148
+ empty[10..empty.length] || []
149
149
  end
150
150
 
151
151
  def empty_top(limit = 10)
@@ -6,6 +6,7 @@ module Stepdown
6
6
 
7
7
  def initialize
8
8
  @steps = {}
9
+ @addition_order = []
9
10
  end
10
11
 
11
12
  def add_step(id, regex)
@@ -14,6 +15,7 @@ module Stepdown
14
15
  else
15
16
  @steps[id] = Stepdown::Step.new(id, regex)
16
17
  @steps[id].count = 1
18
+ @addition_order << id
17
19
  end
18
20
  end
19
21
 
@@ -22,7 +24,7 @@ module Stepdown
22
24
  end
23
25
 
24
26
  def each
25
- @steps.each{|id, step| yield step }
27
+ @addition_order.each{|id| yield @steps[id] }
26
28
  end
27
29
 
28
30
  def [](id)
@@ -1,3 +1,3 @@
1
1
  module Stepdown
2
- VERSION = "0.6.3"
2
+ VERSION = "0.6.4"
3
3
  end
@@ -0,0 +1,24 @@
1
+ body {
2
+ font-family: verdana, helvetica, arial;
3
+ font-size: 12px; }
4
+
5
+ #page_container {
6
+ width: 900px;
7
+ margin: auto; }
8
+ #page_container table {
9
+ border: 1px solid #cccccc;
10
+ border-spacing: 0; }
11
+ #page_container table th {
12
+ border: 1px solid #999999;
13
+ text-align: left;
14
+ padding: 3px;
15
+ background-color: #999999; }
16
+ #page_container table td {
17
+ padding: 3px;
18
+ border: 1px solid #cccccc;
19
+ vertical-align: top; }
20
+
21
+ #navigation ul {
22
+ padding: 0; }
23
+ #navigation li {
24
+ display: inline; }
@@ -76,9 +76,9 @@ describe Stepdown::Statistics do
76
76
 
77
77
  reporter.groupings[0].step_collection.should =~ [@s1,@s2,@s3,@s4,@s5]
78
78
  reporter.groupings[1].step_collection.should =~ [@s1,@s2,@s3,@s4,@s5]
79
- reporter.groupings[2].step_collection.should =~ [@s1,@s2,@s5]
79
+ reporter.groupings[2].step_collection.should =~ [@s1,@s2,@s3,@s4]
80
80
  reporter.groupings[3].step_collection.should =~ [@s1,@s2,@s3,@s4]
81
- reporter.groupings[4].step_collection.should =~ [@s1,@s2,@s3,@s4]
81
+ reporter.groupings[4].step_collection.should =~ [@s1,@s2,@s5]
82
82
 
83
83
  end
84
84
 
@@ -234,6 +234,13 @@ describe Stepdown::Statistics do
234
234
  end
235
235
  end
236
236
 
237
+ methods.each do |method|
238
+ it "should not break if there are not enough elements for a requested collection" do
239
+ @stats.stub!(method.to_sym).and_return([])
240
+ @stats.send("#{method}_rest".to_sym).should be_empty
241
+ end
242
+ end
243
+
237
244
  end
238
245
 
239
246
  end
@@ -75,4 +75,19 @@ describe Stepdown::StepCollection do
75
75
  end
76
76
  end
77
77
 
78
+ describe "returning steps" do
79
+ it "should return elements in the order that they are added" do
80
+
81
+ @collection = Stepdown::StepCollection.new
82
+
83
+ ids = [100, 42, 60]
84
+ @collection.add_step(100, /step 1/)
85
+ @collection.add_step(42, /step 2/)
86
+ @collection.add_step(60, /step 3/)
87
+
88
+ @collection.each_with_index{|step, i| step.id.should == ids[i] }
89
+ end
90
+ end
91
+
92
+
78
93
  end
data/stepdown.gemspec CHANGED
@@ -15,10 +15,10 @@ Gem::Specification.new do |s|
15
15
  s.required_rubygems_version = ">= 1.3.6"
16
16
  s.rubyforge_project = "stepdown"
17
17
 
18
- s.add_dependency('haml', '> 2.0')
19
18
  s.add_dependency('gherkin', '> 2.3')
20
19
  s.add_dependency('bundler', '> 1.0')
21
20
  s.add_development_dependency('rspec', "~> 2.5.0")
21
+ s.add_development_dependency('sass', "~> 3.1.0")
22
22
  s.add_development_dependency('rake')
23
23
 
24
24
  s.files = `git ls-files`.split("\n")
@@ -0,0 +1,5 @@
1
+ <% empty_rest.each do |scen| %>
2
+ <tr>
3
+ <td><%= scen.name %></td>
4
+ </tr>
5
+ <% end %>
@@ -0,0 +1,31 @@
1
+ <% groupings_rest.each_with_index do |grouping, i|
2
+ next if grouping.use_count == 0 %>
3
+ <tr>
4
+ <td>
5
+ <%= grouping.regex.inspect %>
6
+ <br />
7
+ <a href='#' class='g<%= i %>'>Show associated steps</a>
8
+ </td>
9
+ <td>
10
+ <%= grouping.use_count %>
11
+ </td>
12
+ </tr>
13
+ <tr class='g<%= i %>' style='display: none;'>
14
+ <td colspan='2'>
15
+ <table>
16
+ <tr>
17
+ <th> Association count</th>
18
+ <th> Step</th>
19
+ </tr>
20
+ <tbody>
21
+ <% grouping.step_collection.each do |step| %>
22
+ <tr>
23
+ <td><%= step.count %></td>
24
+ <td><%= CGI.escapeHTML step.regex.inspect %></td>
25
+ </tr>
26
+ <% end %>
27
+ </tbody>
28
+ </table>
29
+ </td>
30
+ </tr>
31
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <% empty_rest.each do |scen| %>
2
+ <tr>
3
+ <td><%= scen.name %></td>
4
+ </tr>
5
+ <% end %>
@@ -0,0 +1,8 @@
1
+ <% usages_rest.each do |use| %>
2
+ <tr>
3
+ <td><%= use.step.regex.inspect %></td>
4
+ <td><%= use.total_usage %></td>
5
+ <td><%= use.number_scenarios %></td>
6
+ <td><%= use.use_scenario %></td>
7
+ </tr>
8
+ <% end %>
@@ -0,0 +1,218 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+
3
+ <html>
4
+ <head>
5
+ <title> Stepdown - Cucumber feature analysis</title>
6
+ <link type='text/css' rel='stylesheet' href='stepdown.css'></link>
7
+ <script src='jquery-1.6.1.min.js'></script>
8
+ <script src='js-class.js'></script>
9
+ <script src='bluff-min.js'></script>
10
+ <script src='excanvas.js'></script>
11
+ <script src='step_down.js'></script>
12
+ </head>
13
+ <body>
14
+ <div id='page_container'>
15
+ <div id='header'>
16
+ <h1> Cucumber analysis</h1>
17
+ </div>
18
+ <div id='navigation'>
19
+ <ul>
20
+ <li>
21
+ <a href='#overview'> Overview</a>
22
+ </li>
23
+ <li>
24
+ <a href='#trend'> Trend</a>
25
+ </li>
26
+ <li>
27
+ <a href='#usage'> Step usage</a>
28
+ </li>
29
+ <li>
30
+ <a href='#unused'> Unused steps</a>
31
+ </li>
32
+ <li>
33
+ <a href='#empty'> Empty scenarios</a>
34
+ </li>
35
+ <li>
36
+ <a href='#grouping'> Step grouping</a>
37
+ </li>
38
+ </ul>
39
+ </div>
40
+ <div id='content'>
41
+ <h2>
42
+ <a name='overview'> Overview</a>
43
+ </h2>
44
+ <table>
45
+ <tbody>
46
+ <tr>
47
+ <th> Stat</th>
48
+ <th> Result</th>
49
+ </tr>
50
+ <tr>
51
+ <td> Total number of scenarios</td>
52
+ <td><%= total_scenarios %></td>
53
+ </tr>
54
+ <tr>
55
+ <td> Total number of steps</td>
56
+ <td><%= total_steps %></td>
57
+ </tr>
58
+ <tr>
59
+ <td> Unused steps</td>
60
+ <td><%= unused_step_count %></td>
61
+ </tr>
62
+ <tr>
63
+ <td> Steps per scenario</td>
64
+ <td><%= steps_per_scenario %></td>
65
+ </tr>
66
+ <tr>
67
+ <td> Unique steps per scenario</td>
68
+ <td><%= unique_steps %></td>
69
+ </tr>
70
+ </tbody>
71
+ </table>
72
+ <h2>
73
+ <a name='trend'> Trend</a>
74
+ </h2>
75
+ <div>
76
+ <canvas id='graph'></canvas>
77
+ </div>
78
+
79
+ <h2>
80
+ <a name='usage'> Step usages</a>
81
+ </h2>
82
+ <div>
83
+ Filter
84
+ <br />
85
+ Usage
86
+ <select id='use_filter'>
87
+ <option> All
88
+ <option value='20'> >20</option>
89
+ <option value='<50'> >50</option>
90
+ <option value='<75'> >75</option>
91
+ <option value='<100'> >100</option>
92
+ <option value='<200'> >200</option>
93
+ <option value='<300'> >300</option>
94
+ </select>
95
+ Scenarios
96
+ Usage
97
+ <select id='scenario_filter'>
98
+ <option> All
99
+ <option value='<10'> >10</option>
100
+ <option value='<20'> >20</option>
101
+ <option value='<50'> >50</option>
102
+ <option value='<75'> >75</option>
103
+ <option value='<100'> >100</option>
104
+ <option value='<200'> >200</option>
105
+ <option value='<300'> >300</option>
106
+ </select>
107
+ </div>
108
+ <table id='usages'>
109
+ <tbody>
110
+ <tr>
111
+ <th> Step</th>
112
+ <th> Total usage</th>
113
+ <th> Scenarios</th>
114
+ <th> Use per scenario</th>
115
+ </tr>
116
+
117
+ <% usages_top(10).each do |use| %>
118
+ <tr>
119
+ <td><%= use.step.regex.inspect %></td>
120
+ <td><%= use.total_usage %></td>
121
+ <td><%= use.number_scenarios %></td>
122
+ <td><%= use.use_scenario %></td>
123
+ </tr>
124
+ <% end %>
125
+ <tr>
126
+ <td colspan='4'>
127
+ <a href="#" class="more" partial='usages'>See all</a>
128
+ </td>
129
+ </tr>
130
+ </tbody>
131
+ </table>
132
+
133
+ <h2>
134
+ <a name='unused'> Unused steps</a>
135
+ </h2>
136
+ <table id='unused'>
137
+ <tbody>
138
+ <th> Step</th>
139
+
140
+ <% unused_top(10).each do |use| %>
141
+ <tr>
142
+ <td><%= use.step.regex.inspect %></td>
143
+ </tr>
144
+ <% end %>
145
+ <tr>
146
+ <td colspan='4'>
147
+ <a href="#" class="more" partial='unused'>See all</a>
148
+ </td>
149
+ </tr>
150
+ </tbody>
151
+ </table>
152
+ <h2>
153
+ <a name='empty'> Empty scenarios</a>
154
+ </h2>
155
+ <table id='empty'>
156
+ <tbody>
157
+ <th> Scenarios</th>
158
+
159
+ <% empty_top(10).each do |scen| %>
160
+ <tr>
161
+ <td><%= scen.name %></td>
162
+ </tr>
163
+ <% end %>
164
+ <tr>
165
+ <td colspan='4'>
166
+ <a href="#" class="more" partial='empty'>See all</a>
167
+ </td>
168
+ </tr>
169
+ </tbody>
170
+ </table>
171
+ <h2>
172
+ <a name='grouping'> Step grouping</a>
173
+ </h2>
174
+ <table id='grouping'>
175
+ <tbody>
176
+ <th> Step</th>
177
+ <th> Total step associations</th>
178
+
179
+ <% groupings_top(10).each_with_index do |grouping, i|
180
+ next if grouping.use_count == 0 %>
181
+ <tr>
182
+ <td>
183
+ <%= grouping.regex.inspect %>
184
+ <br />
185
+ <a href='#' class="g<%=i %>">Show associated steps</a>
186
+ </td>
187
+ <td><%= grouping.use_count %></td>
188
+ </tr>
189
+ <tr class="g<%= i %>" style="display: none;">
190
+ <td colspan='2'>
191
+ <table>
192
+ <tr>
193
+ <th> Association count</th>
194
+ <th> Step</th>
195
+ </tr>
196
+ <tbody>
197
+ <% grouping.step_collection.each do |step| %>
198
+ <tr>
199
+ <td><%= step.count %></td>
200
+ <td><%= CGI.escapeHTML(step.regex.inspect) %></td>
201
+ </tr>
202
+ <% end %>
203
+ </tbody>
204
+ </table>
205
+ </td>
206
+ </tr>
207
+ <% end %>
208
+ <tr>
209
+ <td colspan="4">
210
+ <a href="#" class="more" partial='grouping'>See all</a>
211
+ </td>
212
+ </tr>
213
+ </tbody>
214
+ </table>
215
+ <script src='stepdown.js'></script>
216
+ </body>
217
+ </html>
218
+
metadata CHANGED
@@ -1,110 +1,83 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: stepdown
3
- version: !ruby/object:Gem::Version
4
- hash: 1
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.4
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 6
9
- - 3
10
- version: 0.6.3
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Sean Caffery
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-08-16 00:00:00 +10:00
19
- default_executable: stepdown
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
22
- name: haml
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ">"
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 2
32
- - 0
33
- version: "2.0"
34
- type: :runtime
35
- version_requirements: *id001
36
- - !ruby/object:Gem::Dependency
12
+ date: 2011-11-06 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
37
15
  name: gherkin
38
- prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
16
+ requirement: &81592020 !ruby/object:Gem::Requirement
40
17
  none: false
41
- requirements:
42
- - - ">"
43
- - !ruby/object:Gem::Version
44
- hash: 5
45
- segments:
46
- - 2
47
- - 3
48
- version: "2.3"
18
+ requirements:
19
+ - - ! '>'
20
+ - !ruby/object:Gem::Version
21
+ version: '2.3'
49
22
  type: :runtime
50
- version_requirements: *id002
51
- - !ruby/object:Gem::Dependency
52
- name: bundler
53
23
  prerelease: false
54
- requirement: &id003 !ruby/object:Gem::Requirement
24
+ version_requirements: *81592020
25
+ - !ruby/object:Gem::Dependency
26
+ name: bundler
27
+ requirement: &81591770 !ruby/object:Gem::Requirement
55
28
  none: false
56
- requirements:
57
- - - ">"
58
- - !ruby/object:Gem::Version
59
- hash: 15
60
- segments:
61
- - 1
62
- - 0
63
- version: "1.0"
29
+ requirements:
30
+ - - ! '>'
31
+ - !ruby/object:Gem::Version
32
+ version: '1.0'
64
33
  type: :runtime
65
- version_requirements: *id003
66
- - !ruby/object:Gem::Dependency
67
- name: rspec
68
34
  prerelease: false
69
- requirement: &id004 !ruby/object:Gem::Requirement
35
+ version_requirements: *81591770
36
+ - !ruby/object:Gem::Dependency
37
+ name: rspec
38
+ requirement: &81591500 !ruby/object:Gem::Requirement
70
39
  none: false
71
- requirements:
40
+ requirements:
72
41
  - - ~>
73
- - !ruby/object:Gem::Version
74
- hash: 27
75
- segments:
76
- - 2
77
- - 5
78
- - 0
42
+ - !ruby/object:Gem::Version
79
43
  version: 2.5.0
80
44
  type: :development
81
- version_requirements: *id004
82
- - !ruby/object:Gem::Dependency
83
- name: rake
84
45
  prerelease: false
85
- requirement: &id005 !ruby/object:Gem::Requirement
46
+ version_requirements: *81591500
47
+ - !ruby/object:Gem::Dependency
48
+ name: sass
49
+ requirement: &81590960 !ruby/object:Gem::Requirement
86
50
  none: false
87
- requirements:
88
- - - ">="
89
- - !ruby/object:Gem::Version
90
- hash: 3
91
- segments:
92
- - 0
93
- version: "0"
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 3.1.0
94
55
  type: :development
95
- version_requirements: *id005
96
- description: Stepdown allows you to see where your most used Cucumber steps are, your unused steps and how they are clustered
97
- email:
56
+ prerelease: false
57
+ version_requirements: *81590960
58
+ - !ruby/object:Gem::Dependency
59
+ name: rake
60
+ requirement: &81590440 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *81590440
69
+ description: Stepdown allows you to see where your most used Cucumber steps are, your
70
+ unused steps and how they are clustered
71
+ email:
98
72
  - sean@lineonpoint.com
99
- executables:
73
+ executables:
100
74
  - stepdown
101
75
  extensions: []
102
-
103
76
  extra_rdoc_files: []
104
-
105
- files:
77
+ files:
106
78
  - .gitignore
107
79
  - .rspec
80
+ - .travis.yml
108
81
  - Gemfile
109
82
  - Gemfile.lock
110
83
  - History.txt
@@ -133,6 +106,7 @@ files:
133
106
  - public/jquery-1.6.1.min.js
134
107
  - public/js-class.js
135
108
  - public/step_down.js
109
+ - public/stepdown.css
136
110
  - spec/fixtures/20110611.yml
137
111
  - spec/fixtures/20110612.yml
138
112
  - spec/lib/stepdown/analyzer_spec.rb
@@ -146,49 +120,34 @@ files:
146
120
  - spec/lib/stepdown/step_instance_spec.rb
147
121
  - spec/spec_helper.rb
148
122
  - stepdown.gemspec
149
- - templates/_empty.html.haml
150
- - templates/_grouping.html.haml
151
- - templates/_unused.html.haml
152
- - templates/_usages.html.haml
153
- - templates/index.html.haml
123
+ - templates/_empty.html.erb
124
+ - templates/_grouping.html.erb
125
+ - templates/_unused.html.erb
126
+ - templates/_usages.html.erb
127
+ - templates/index.html.erb
154
128
  - templates/style.sass
155
- has_rdoc: true
156
129
  homepage: http://stepdown.lineonpoint.com
157
130
  licenses: []
158
-
159
131
  post_install_message:
160
132
  rdoc_options: []
161
-
162
- require_paths:
133
+ require_paths:
163
134
  - lib
164
- required_ruby_version: !ruby/object:Gem::Requirement
135
+ required_ruby_version: !ruby/object:Gem::Requirement
165
136
  none: false
166
- requirements:
167
- - - ">="
168
- - !ruby/object:Gem::Version
169
- hash: 57
170
- segments:
171
- - 1
172
- - 8
173
- - 7
137
+ requirements:
138
+ - - ! '>='
139
+ - !ruby/object:Gem::Version
174
140
  version: 1.8.7
175
- required_rubygems_version: !ruby/object:Gem::Requirement
141
+ required_rubygems_version: !ruby/object:Gem::Requirement
176
142
  none: false
177
- requirements:
178
- - - ">="
179
- - !ruby/object:Gem::Version
180
- hash: 23
181
- segments:
182
- - 1
183
- - 3
184
- - 6
143
+ requirements:
144
+ - - ! '>='
145
+ - !ruby/object:Gem::Version
185
146
  version: 1.3.6
186
147
  requirements: []
187
-
188
148
  rubyforge_project: stepdown
189
- rubygems_version: 1.4.2
149
+ rubygems_version: 1.8.11
190
150
  signing_key:
191
151
  specification_version: 3
192
152
  summary: Static analysis tool for Cucumber features
193
153
  test_files: []
194
-
@@ -1,3 +0,0 @@
1
- - empty_rest.each do |scen|
2
- %tr
3
- %td= scen.name
@@ -1,19 +0,0 @@
1
- - groupings_rest.each_with_index do |grouping, i|
2
- - next if grouping.use_count == 0
3
- %tr
4
- %td
5
- = grouping.regex.inspect
6
- %br
7
- %a{:href => '#', :class => "g#{i}"}Show associated steps
8
- %td= grouping.use_count
9
- %tr{:class => "g#{i}", :style => "display: none;"}
10
- %td{:colspan => 2}
11
- %table
12
- %tr
13
- %th Association count
14
- %th Step
15
- %tbody
16
- - grouping.step_collection.each do |step|
17
- %tr
18
- %td= step.count
19
- %td= CGI.escapeHTML step.regex.inspect
@@ -1,3 +0,0 @@
1
- - empty_rest.each do |scen|
2
- %tr
3
- %td= scen.name
@@ -1,6 +0,0 @@
1
- - usages_rest.each do |use|
2
- %tr
3
- %td= use.step.regex.inspect
4
- %td= use.total_usage
5
- %td= use.number_scenarios
6
- %td= use.use_scenario
@@ -1,155 +0,0 @@
1
- !!! strict
2
-
3
- %html
4
- %head
5
- %title Step down - Cucumber analysis
6
- %link{:type => 'text/css', :rel => 'stylesheet', :href => 'style.css'}
7
- %script{:src => 'jquery-1.6.1.min.js'}
8
- %script{:src => 'js-class.js'}
9
- %script{:src => 'bluff-min.js'}
10
- %script{:src => 'excanvas.js'}
11
- %script{:src => 'step_down.js'}
12
- %body
13
- #page_container
14
- #header
15
- %h1 Cucumber analysis
16
- #navigation
17
- %ul
18
- %li
19
- %a{:href => '#overview'} Overview
20
- %li
21
- %a{:href => '#trend'} Trend
22
- %li
23
- %a{:href => '#usage'} Step usage
24
- %li
25
- %a{:href => '#unused'} Unused steps
26
- %li
27
- %a{:href => '#empty'} Empty scenarios
28
- %li
29
- %a{:href => '#grouping'} Step grouping
30
- #content
31
- %h2
32
- %a{:name => 'overview'} Overview
33
- %table
34
- %tbody
35
- %tr
36
- %th Stat
37
- %th Result
38
- %tr
39
- %td Total number of scenarios
40
- %td= total_scenarios
41
- %tr
42
- %td Total number of steps
43
- %td= total_steps
44
- %tr
45
- %td Unused steps
46
- %td= unused_step_count
47
- %tr
48
- %td Steps per scenario
49
- %td= steps_per_scenario
50
- %tr
51
- %td Unique steps per scenario
52
- %td= unique_steps
53
-
54
- %h2
55
- %a{:name => 'trend'} Trend
56
- %div
57
- %canvas#graph
58
-
59
- %h2
60
- %a{:name => 'usage'} Step usages
61
- %div
62
- Filter
63
- %br
64
- Usage
65
- %select#use_filter
66
- %option All
67
- %option{:value => "<20"} >20
68
- %option{:value => "<50"} >50
69
- %option{:value => "<75"} >75
70
- %option{:value => "<100"} >100
71
- %option{:value => "<200"} >200
72
- %option{:value => "<300"} >300
73
-
74
- Scenarios
75
- Usage
76
- %select#scenario_filter
77
- %option All
78
- %option{:value => "<10"} >10
79
- %option{:value => "<20"} >20
80
- %option{:value => "<50"} >50
81
- %option{:value => "<75"} >75
82
- %option{:value => "<100"} >100
83
- %option{:value => "<200"} >200
84
- %option{:value => "<300"} >300
85
- %table#usages
86
- %tbody
87
- %th Step
88
- %th Total usage
89
- %th Scenarios
90
- %th Use per scenario
91
-
92
- - usages_top(10).each do |use|
93
- %tr
94
- %td= use.step.regex.inspect
95
- %td= use.total_usage
96
- %td= use.number_scenarios
97
- %td= use.use_scenario
98
- %tr
99
- %td{:colspan => "4"}
100
- %a{:href => "#", :class => "more", :partial => 'usages'}See all
101
-
102
- %h2
103
- %a{:name => 'unused'} Unused steps
104
- %table#unused
105
- %tbody
106
- %th Step
107
-
108
- - unused_top(10).each do |use|
109
- %tr
110
- %td= use.step.regex.inspect
111
- %tr
112
- %td{:colspan => "4"}
113
- %a{:href => "#", :class => "more", :partial => 'unused'}See all
114
- %h2
115
- %a{:name => 'empty'} Empty scenarios
116
- %table#empty
117
- %tbody
118
- %th Scenarios
119
-
120
- - empty_top(10).each do |scen|
121
- %tr
122
- %td= scen.name
123
- %tr
124
- %td{:colspan => "4"}
125
- %a{:href => "#", :class => "more", :partial => 'empty'}See all
126
- %h2
127
- %a{:name => 'grouping'} Step grouping
128
- %table#grouping
129
- %tbody
130
- %th Step
131
- %th Total step associations
132
-
133
- - groupings_top(10).each_with_index do |grouping, i|
134
- - next if grouping.use_count == 0
135
- %tr
136
- %td
137
- = grouping.regex.inspect
138
- %br
139
- %a{:href => '#', :class => "g#{i}"}Show associated steps
140
- %td= grouping.use_count
141
- %tr{:class => "g#{i}", :style => "display: none;"}
142
- %td{:colspan => 2}
143
- %table
144
- %tr
145
- %th Association count
146
- %th Step
147
- %tbody
148
- - grouping.step_collection.each do |step|
149
- %tr
150
- %td= step.count
151
- %td= CGI.escapeHTML step.regex.inspect
152
- %tr
153
- %td{:colspan => "4"}
154
- %a{:href => "#", :class => "more", :partial => 'grouping'}See all
155
- %script{:src => 'stepdown.js'}