pretty_face 0.4 → 0.5
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.
- checksums.yaml +7 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/ChangeLog +6 -0
- data/Gemfile +2 -1
- data/README.md +17 -3
- data/features/feature_pages.feature +8 -2
- data/features/step_definitions/report_steps.rb +12 -0
- data/features/support/env.rb +8 -1
- data/features/support/error_display.rb +16 -0
- data/lib/pretty_face/formatter/html.rb +1 -1
- data/lib/pretty_face/formatter/report.rb +65 -0
- data/lib/pretty_face/templates/_step.erb +46 -41
- data/lib/pretty_face/templates/feature.erb +14 -53
- data/lib/pretty_face/templates/style.css +108 -8
- data/lib/pretty_face/version.rb +1 -1
- data/pretty_face.gemspec +4 -2
- metadata +41 -31
- data/.rvmrc +0 -1
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 9eeaa80ce445692b64cc177ab61914981f99195e
|
4
|
+
data.tar.gz: 07b5e419aaf7a8915c8001feda76d00f3f2dd279
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2e6d702f801dd887938086b978c8f96853fd2e66744a55aac81a67cd6bff58242ae75b5820fb1860df320f36c4bc57b64396575940b9f46c000dd41abe5bbf97
|
7
|
+
data.tar.gz: 526f55dc3f05b52d0025c7906c8a0fc4f2acd58e15a63922e5e154a6c22efded7b2d97c05406104ce0ecfae9f5641bd085c171131cf6ba750caad29e4a300894
|
data/.ruby-gemset
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
testgen
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
ruby-2.0.0-p195
|
data/ChangeLog
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
=== Release 0.5 / 2013-7-19
|
2
|
+
* Updated ReadMe
|
3
|
+
* Displaying step definition on step failure
|
4
|
+
* Added color to scenario headers indicating status
|
5
|
+
* Changed styling of scenario reporting
|
6
|
+
|
1
7
|
=== Release 0.4 / 2013-4-13
|
2
8
|
* Make replacement items optional
|
3
9
|
* Updated actionpack dependency to the latest version 3.2.13
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,11 +1,25 @@
|
|
1
1
|
# pretty_face
|
2
2
|
|
3
|
-
HTML report for cucumber
|
3
|
+
HTML report for cucumber. You can customize the report by editing an erb file.
|
4
4
|
|
5
|
-
The current release is very basic but you can expect a lot more over the next month or so.
|
5
|
+
The current release is very basic but you can expect a lot more over the next month or so.
|
6
|
+
|
7
|
+
## Getting Started
|
8
|
+
|
9
|
+
### Download gem
|
10
|
+
Add the gem to your Gemfile
|
11
|
+
|
12
|
+
`gem 'pretty_face'`
|
13
|
+
|
14
|
+
Then do a `bundle update` to get the latest version
|
15
|
+
|
16
|
+
### Add Formatter
|
17
|
+
Update your profile in cucumber.yml file with the following arguments
|
6
18
|
|
7
19
|
--format PrettyFace::Formatter::Html --out index.html
|
8
|
-
|
20
|
+
|
21
|
+
You can also run cucumber from the command line with the same arguments.
|
22
|
+
|
9
23
|
## Customizing the report
|
10
24
|
|
11
25
|
Starting with version 0.3 of the gem you can customize some elements on the report. You will do this by first creating a directory named `pretty_face` in the `features/support` directory. Customization files should be placed in this directory.
|
@@ -69,8 +69,14 @@ Feature: pages that show details for features
|
|
69
69
|
|
70
70
|
Scenario: It should display errors for features
|
71
71
|
Then the file "results/basic.html" should contain "RSpec::Expectations::ExpectationNotMetError"
|
72
|
-
|
73
|
-
|
72
|
+
And the file "results/advanced.html" should contain "RSpec::Expectations::ExpectationNotMetError"
|
73
|
+
And the file "results/failing_background.html" should contain "RSpec::Expectations::ExpectationNotMetError"
|
74
|
+
|
75
|
+
@focus
|
76
|
+
Scenario: It should display error message with a yellow background and red text
|
77
|
+
Then the file "results/basic.html" should contain "RSpec::Expectations::ExpectationNotMetError"
|
78
|
+
And the background of the error message row should be "255, 251, 211"
|
79
|
+
And the text of the of the error message row should be "194, 0, 0"
|
74
80
|
|
75
81
|
Scenario: Embedding an image into the page
|
76
82
|
Then the file "results/basic.html" should contain "<img id='img_0' style='display: none' src='images/autotrader.png'/>"
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'fileutils'
|
2
2
|
|
3
|
+
|
3
4
|
When /^I have a logo file in the correct location$/ do
|
4
5
|
FileUtils.cp "features/support/logo.png", "features/support/pretty_face/"
|
5
6
|
end
|
@@ -23,3 +24,14 @@ end
|
|
23
24
|
Then /^I should remove the feature header partial file$/ do
|
24
25
|
FileUtils.rm "features/support/pretty_face/_feature_header.erb"
|
25
26
|
end
|
27
|
+
|
28
|
+
Then(/^the background of the error message row should be "(.*?)"$/) do |background|
|
29
|
+
@browser = Watir::Browser.new :firefox
|
30
|
+
visit ErrorDisplay do |page|
|
31
|
+
page.error_background.should include background
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
Then(/^the text of the of the error message row should be "(.*?)"$/) do |color|
|
36
|
+
on(ErrorDisplay).error_text_color.should include color
|
37
|
+
end
|
data/features/support/env.rb
CHANGED
@@ -1,9 +1,16 @@
|
|
1
1
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '../../', 'lib'))
|
2
2
|
|
3
3
|
require 'aruba/cucumber'
|
4
|
-
|
4
|
+
require 'page-object'
|
5
5
|
require 'pretty_face'
|
6
|
+
require 'watir-webdriver'
|
7
|
+
|
8
|
+
World PageObject::PageFactory
|
6
9
|
|
7
10
|
Before do
|
8
11
|
@dirs = [File.join(File.dirname(__FILE__), '..', '..')]
|
9
12
|
end
|
13
|
+
|
14
|
+
After do
|
15
|
+
@browser.close if @browser
|
16
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class ErrorDisplay
|
2
|
+
include PageObject
|
3
|
+
|
4
|
+
page_url "file://#{File.dirname(__FILE__)}/../../results/basic.html"
|
5
|
+
|
6
|
+
element(:error, :tr, :class => 'error')
|
7
|
+
|
8
|
+
def error_background
|
9
|
+
error_element.style('background-color')
|
10
|
+
end
|
11
|
+
|
12
|
+
def error_text_color
|
13
|
+
error_element.style('color')
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
@@ -191,9 +191,74 @@ module PrettyFace
|
|
191
191
|
def has_table?
|
192
192
|
not table.nil?
|
193
193
|
end
|
194
|
+
|
194
195
|
def has_multiline_arg?
|
195
196
|
!multiline_arg.nil? && !has_table?
|
196
197
|
end
|
198
|
+
|
199
|
+
def file_with_error(file_colon_line)
|
200
|
+
@snippet_extractor ||= SnippetExtractor.new
|
201
|
+
file, line = @snippet_extractor.file_name_and_line(file_colon_line)
|
202
|
+
file
|
203
|
+
end
|
204
|
+
|
205
|
+
#from cucumber ===================
|
206
|
+
def extra_failure_content(file_colon_line)
|
207
|
+
@snippet_extractor ||= SnippetExtractor.new
|
208
|
+
@snippet_extractor.snippet(file_colon_line)
|
209
|
+
end
|
210
|
+
|
211
|
+
class SnippetExtractor
|
212
|
+
require 'syntax/convertors/html';
|
213
|
+
@@converter = Syntax::Convertors::HTML.for_syntax "ruby"
|
214
|
+
|
215
|
+
def file_name_and_line(error_line)
|
216
|
+
if error_line =~ /(.*):(\d+)/
|
217
|
+
file = $1
|
218
|
+
line = $2.to_i
|
219
|
+
[file, line]
|
220
|
+
end
|
221
|
+
end
|
222
|
+
|
223
|
+
def snippet(error)
|
224
|
+
raw_code, line, file = snippet_for(error[0])
|
225
|
+
highlighted = @@converter.convert(raw_code, false)
|
226
|
+
|
227
|
+
"<pre class=\"ruby\"><strong>#{file + "\n"}</strong><code>#{post_process(highlighted, line)}</code></pre>"
|
228
|
+
end
|
229
|
+
|
230
|
+
def snippet_for(error_line)
|
231
|
+
file, line = file_name_and_line(error_line)
|
232
|
+
if file
|
233
|
+
[lines_around(file, line), line, file]
|
234
|
+
else
|
235
|
+
["# Couldn't get snippet for #{error_line}", 1]
|
236
|
+
end
|
237
|
+
end
|
238
|
+
|
239
|
+
def lines_around(file, line)
|
240
|
+
if File.file?(file)
|
241
|
+
lines = File.open(file).read.split("\n")
|
242
|
+
min = [0, line-3].max
|
243
|
+
max = [line+1, lines.length-1].min
|
244
|
+
selected_lines = []
|
245
|
+
selected_lines.join("\n")
|
246
|
+
lines[min..max].join("\n")
|
247
|
+
else
|
248
|
+
"# Couldn't get snippet for #{file}"
|
249
|
+
end
|
250
|
+
end
|
251
|
+
|
252
|
+
def post_process(highlighted, offending_line)
|
253
|
+
new_lines = []
|
254
|
+
highlighted.split("\n").each_with_index do |line, i|
|
255
|
+
new_line = "<span class=\"linenum\">#{offending_line+i-2}</span>#{line}"
|
256
|
+
new_line = "<span class=\"offending\">#{new_line}</span>" if i == 2
|
257
|
+
new_lines << new_line
|
258
|
+
end
|
259
|
+
new_lines.join("\n")
|
260
|
+
end
|
261
|
+
end
|
197
262
|
end
|
198
263
|
end
|
199
264
|
end
|
@@ -1,41 +1,46 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
1
|
+
<%= "#{step.keyword} #{step.name}" %>
|
2
|
+
<% if step.has_table? %>
|
3
|
+
<br />
|
4
|
+
<table border="1" class="param_table">
|
5
|
+
<tr>
|
6
|
+
<% step.table.first.each do |column| %>
|
7
|
+
<th><%= column %></th>
|
8
|
+
<% end %>
|
9
|
+
</tr>
|
10
|
+
<% step.table.delete_at 0 %>
|
11
|
+
<% step.table.each do |row| %>
|
12
|
+
<tr>
|
13
|
+
<% row.each do |column| %>
|
14
|
+
<td><%= column %></td>
|
15
|
+
<% end %>
|
16
|
+
</tr>
|
17
|
+
<% end %>
|
18
|
+
</table>
|
19
|
+
<% end %>
|
20
|
+
<% if step.has_multiline_arg? %>
|
21
|
+
<br />
|
22
|
+
<table border="1" class="multiline_arg">
|
23
|
+
<tr>
|
24
|
+
<td><pre><%= step.multiline_arg %></pre></td>
|
25
|
+
</tr>
|
26
|
+
</table>
|
27
|
+
<% end %>
|
28
|
+
<% if step.failed_with_error? %>
|
29
|
+
<table>
|
30
|
+
<tr class="error">
|
31
|
+
<td class="message">
|
32
|
+
<strong><pre><%= "#{step.error.message} (#{step.error.class})" %></pre></strong>
|
33
|
+
</td>
|
34
|
+
</tr>
|
35
|
+
<tr>
|
36
|
+
<td>
|
37
|
+
<%= raw(step.extra_failure_content(step.error.backtrace)) %>
|
38
|
+
</td>
|
39
|
+
</tr>
|
40
|
+
<tr >
|
41
|
+
<td class="detail">
|
42
|
+
<pre><%= step.error.backtrace.join("\n") %></pre>
|
43
|
+
</td>
|
44
|
+
</tr>
|
45
|
+
</table>
|
46
|
+
<% end %>
|
@@ -33,7 +33,7 @@
|
|
33
33
|
<tr>
|
34
34
|
<th></th>
|
35
35
|
<th>Executed</th>
|
36
|
-
|
36
|
+
<th >Passed</th>
|
37
37
|
<th>Failed</th>
|
38
38
|
<th>Skipped</th>
|
39
39
|
<th>Undefined</th>
|
@@ -43,7 +43,7 @@
|
|
43
43
|
<tr>
|
44
44
|
<td class="summary_row_header">Scenarios</td>
|
45
45
|
<td><%= feature.scenarios.length %></td>
|
46
|
-
<td><%= feature.scenario_summary_for :passed %></td>
|
46
|
+
<td class="summary"><%= feature.scenario_summary_for :passed %></td>
|
47
47
|
<td><%= feature.scenario_summary_for :failed %></td>
|
48
48
|
<td><%= feature.scenario_summary_for :skipped %></td>
|
49
49
|
<td><%= feature.scenario_summary_for :undefined %></td>
|
@@ -63,17 +63,17 @@
|
|
63
63
|
</table>
|
64
64
|
</div>
|
65
65
|
|
66
|
-
<div style="width:
|
66
|
+
<div style="width: 60%; float: left;">
|
67
67
|
<% if feature.has_background? %>
|
68
68
|
<br />
|
69
69
|
<h2 class="failures">Background: <%= feature.background_title.name %></h2>
|
70
70
|
<% end %>
|
71
|
-
<table cellspacing="0" cellpadding="7" border="0"
|
71
|
+
<table cellspacing="0" cellpadding="7" border="0" width="100%">
|
72
72
|
<% feature.background_steps.each do |step| %>
|
73
73
|
<tr>
|
74
74
|
<td><%= raw(feature.image_tag_for(step.status, feature.file)) %></td>
|
75
75
|
<td>
|
76
|
-
<%= render "step", :
|
76
|
+
<%= render "step", step: step %>
|
77
77
|
</td>
|
78
78
|
</tr>
|
79
79
|
<% end %>
|
@@ -82,57 +82,18 @@
|
|
82
82
|
<h2 class="failures">Scenarios:</h2>
|
83
83
|
<br />
|
84
84
|
<% feature.scenarios.each do |scenario| %>
|
85
|
-
<table cellspacing="0" cellpadding="7"
|
86
|
-
|
87
|
-
<th
|
88
|
-
<th><%= scenario.name %></th>
|
85
|
+
<table cellspacing="0" cellpadding="7" class="scenario" width="100%">
|
86
|
+
<tr >
|
87
|
+
<th colspan="2" class="<%= scenario.status.to_s %>"><%= scenario.name %></th>
|
89
88
|
</tr>
|
90
89
|
<% scenario.steps.each do |step| %>
|
91
|
-
|
92
|
-
<td> <%= raw(feature.image_tag_for(step.status, feature.file)) %></td>
|
93
|
-
|
94
|
-
|
95
|
-
<% if step.has_table? %>
|
96
|
-
<br />
|
97
|
-
<table class="param_table">
|
98
|
-
<tr>
|
99
|
-
<% step.table.first.each do |column| %>
|
100
|
-
<th><%= column %></th>
|
101
|
-
<% end %>
|
102
|
-
</tr>
|
103
|
-
<% step.table.delete_at 0 %>
|
104
|
-
<% step.table.each do |row| %>
|
105
|
-
<tr>
|
106
|
-
<% row.each do |column| %>
|
107
|
-
<td><%= column %></td>
|
108
|
-
<% end %>
|
109
|
-
</tr>
|
110
|
-
<% end %>
|
111
|
-
</table>
|
112
|
-
<% end %>
|
113
|
-
<% if step.has_multiline_arg? %>
|
114
|
-
<br />
|
115
|
-
<div class="multiline_arg">
|
116
|
-
<pre><code><%= step.multiline_arg %></code></pre>
|
117
|
-
</div>
|
118
|
-
<% end %>
|
119
|
-
<% if step.failed_with_error? %>
|
120
|
-
<table>
|
121
|
-
<tr class="error message">
|
122
|
-
<td>
|
123
|
-
<%= "#{step.error.message} (#{step.error.class})" %>
|
124
|
-
</td>
|
125
|
-
</tr>
|
126
|
-
<tr class="error detail">
|
127
|
-
<td>
|
128
|
-
<pre><%= step.error.backtrace.join("\n") %></pre>
|
129
|
-
</td>
|
130
|
-
</tr>
|
131
|
-
</table>
|
132
|
-
<% end %>
|
90
|
+
<tr class="borderSeparator">
|
91
|
+
<td class="image_tag"> <%= raw(feature.image_tag_for(step.status, feature.file)) %></td>
|
92
|
+
<td>
|
93
|
+
<%= render "step", step: step %>
|
133
94
|
</td>
|
134
|
-
|
135
|
-
|
95
|
+
</tr>
|
96
|
+
<% end %>
|
136
97
|
</table>
|
137
98
|
<% if scenario.has_image? %>
|
138
99
|
<a href='' onclick="img=document.getElementById('<%= scenario.image_id %>'); img.style.display = (img.style.display == 'none' ? 'block' : 'none');return false"><%= "#{scenario.image_label}" %></a><br />
|
@@ -44,8 +44,23 @@ h2 {
|
|
44
44
|
text-align: inherit;
|
45
45
|
width: inherit;
|
46
46
|
}
|
47
|
-
|
48
|
-
|
47
|
+
|
48
|
+
.failed {
|
49
|
+
background-color: #C20000;
|
50
|
+
color: white;
|
51
|
+
border-color: #333333;
|
52
|
+
}
|
53
|
+
.passed {
|
54
|
+
background-color: #3d7700;
|
55
|
+
color: white;
|
56
|
+
}
|
57
|
+
.pending {
|
58
|
+
background-color: #faf834;
|
59
|
+
|
60
|
+
}
|
61
|
+
.undefined {
|
62
|
+
background-color: #e0ffff;
|
63
|
+
|
49
64
|
}
|
50
65
|
.footer {
|
51
66
|
width: 100%;
|
@@ -85,7 +100,21 @@ h2 {
|
|
85
100
|
background-color: #F0F0F0;
|
86
101
|
font-size: 1em;
|
87
102
|
}
|
103
|
+
table.scenario {
|
104
|
+
border-width: 2px;
|
105
|
+
border-color: #cccccc;
|
106
|
+
border-style: solid;
|
107
|
+
border-collapse: collapse;
|
108
|
+
}
|
88
109
|
|
110
|
+
.borderSeparator {
|
111
|
+
border-top: 1px solid #ccc;
|
112
|
+
}
|
113
|
+
|
114
|
+
td.image_tag {
|
115
|
+
text-align: center;
|
116
|
+
vertical-align: text-top;
|
117
|
+
}
|
89
118
|
.description {
|
90
119
|
border: 1px dotted #CCCCCC;
|
91
120
|
border-radius: 8px 8px 8px 8px;
|
@@ -130,20 +159,91 @@ h2 {
|
|
130
159
|
}
|
131
160
|
|
132
161
|
.error {
|
133
|
-
color: #
|
134
|
-
background-color: #
|
162
|
+
color: #C20000;
|
163
|
+
background-color: #FFFBD3;
|
135
164
|
border-color: #eed3d7;
|
136
165
|
}
|
137
166
|
|
138
167
|
.message td {
|
139
|
-
padding:
|
168
|
+
padding: 5px;
|
140
169
|
font-weight: bold;
|
141
|
-
border-radius: 18px 18px 0px 0px;
|
142
170
|
}
|
143
171
|
|
144
172
|
.detail td {
|
145
173
|
margin-left: 10px;
|
146
|
-
padding:
|
147
|
-
|
174
|
+
padding: 7px;
|
175
|
+
font-weight: normal;
|
148
176
|
}
|
149
177
|
|
178
|
+
|
179
|
+
|
180
|
+
.ruby {
|
181
|
+
font-size: 12px;
|
182
|
+
font-family: monospace;
|
183
|
+
color: white;
|
184
|
+
background: black;
|
185
|
+
padding: 0.1em 0 0.2em 0;
|
186
|
+
}
|
187
|
+
.ruby .keyword {
|
188
|
+
color: #ff6600;
|
189
|
+
}
|
190
|
+
.ruby .constant {
|
191
|
+
color: #339999;
|
192
|
+
}
|
193
|
+
.ruby .attribute {
|
194
|
+
color: white;
|
195
|
+
}
|
196
|
+
.ruby .global {
|
197
|
+
color: white;
|
198
|
+
}
|
199
|
+
.ruby .module {
|
200
|
+
color: white;
|
201
|
+
}
|
202
|
+
.ruby .class {
|
203
|
+
color: white;
|
204
|
+
}
|
205
|
+
.ruby .string {
|
206
|
+
color: #66ff00;
|
207
|
+
}
|
208
|
+
.ruby .ident {
|
209
|
+
color: white;
|
210
|
+
}
|
211
|
+
.ruby .method {
|
212
|
+
color: #ffcc00;
|
213
|
+
}
|
214
|
+
.ruby .number {
|
215
|
+
color: white;
|
216
|
+
}
|
217
|
+
.ruby .char {
|
218
|
+
color: white;
|
219
|
+
}
|
220
|
+
.ruby .comment {
|
221
|
+
color: #9933cc;
|
222
|
+
}
|
223
|
+
.ruby .symbol {
|
224
|
+
color: white;
|
225
|
+
}
|
226
|
+
.ruby .regex {
|
227
|
+
color: #44b4cc;
|
228
|
+
}
|
229
|
+
.ruby .punct {
|
230
|
+
color: white;
|
231
|
+
}
|
232
|
+
.ruby .escape {
|
233
|
+
color: white;
|
234
|
+
}
|
235
|
+
.ruby .interp {
|
236
|
+
color: white;
|
237
|
+
}
|
238
|
+
.ruby .expr {
|
239
|
+
color: white;
|
240
|
+
}
|
241
|
+
.ruby .offending {
|
242
|
+
background: #333333;
|
243
|
+
}
|
244
|
+
.ruby .linenum {
|
245
|
+
width: 75px;
|
246
|
+
padding: 0.1em 1em 0.2em 0;
|
247
|
+
color: black;
|
248
|
+
background: #fffbd3;
|
249
|
+
}
|
data/lib/pretty_face/version.rb
CHANGED
data/pretty_face.gemspec
CHANGED
@@ -5,8 +5,9 @@ require "pretty_face/version"
|
|
5
5
|
Gem::Specification.new do |s|
|
6
6
|
s.name = "pretty_face"
|
7
7
|
s.version = PrettyFace::VERSION
|
8
|
-
s.
|
9
|
-
s.
|
8
|
+
s.license = 'MIT'
|
9
|
+
s.authors = ["Jeffrey S. Morgan", "Joel Byler", "Steve Jackson", "Sahithya Wintrich", "Carl Shotwell"]
|
10
|
+
s.email = ["jeff.morgan@leandog.com", "joelbyler@gmail.com", "steve.jackson@leandogsoftware.com", "sahithya.wintrich@gmail.com", "carl.shotwell@leandog.com"]
|
10
11
|
s.homepage = "http://github.com/cheezy/pretty_face"
|
11
12
|
s.summary = %q{HTML Report/Formatter for Cucumber and RSpec}
|
12
13
|
s.description = %q{HTML Report/Formatter for cucumber that allows user to modify erb in order to customize.}
|
@@ -19,6 +20,7 @@ Gem::Specification.new do |s|
|
|
19
20
|
s.require_paths = ["lib"]
|
20
21
|
|
21
22
|
s.add_dependency "actionpack", ">= 3.2.13"
|
23
|
+
s.add_dependency "syntax"
|
22
24
|
|
23
25
|
s.add_development_dependency "cucumber"
|
24
26
|
s.add_development_dependency "rspec"
|
metadata
CHANGED
@@ -1,96 +1,101 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pretty_face
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
5
|
-
prerelease:
|
4
|
+
version: '0.5'
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Jeffrey S. Morgan
|
9
8
|
- Joel Byler
|
10
9
|
- Steve Jackson
|
10
|
+
- Sahithya Wintrich
|
11
|
+
- Carl Shotwell
|
11
12
|
autorequire:
|
12
13
|
bindir: bin
|
13
14
|
cert_chain: []
|
14
|
-
date: 2013-
|
15
|
+
date: 2013-07-19 00:00:00.000000000 Z
|
15
16
|
dependencies:
|
16
17
|
- !ruby/object:Gem::Dependency
|
17
18
|
name: actionpack
|
18
19
|
requirement: !ruby/object:Gem::Requirement
|
19
|
-
none: false
|
20
20
|
requirements:
|
21
|
-
- -
|
21
|
+
- - '>='
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: 3.2.13
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
27
|
-
none: false
|
28
27
|
requirements:
|
29
|
-
- -
|
28
|
+
- - '>='
|
30
29
|
- !ruby/object:Gem::Version
|
31
30
|
version: 3.2.13
|
31
|
+
- !ruby/object:Gem::Dependency
|
32
|
+
name: syntax
|
33
|
+
requirement: !ruby/object:Gem::Requirement
|
34
|
+
requirements:
|
35
|
+
- - '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
requirements:
|
42
|
+
- - '>='
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: '0'
|
32
45
|
- !ruby/object:Gem::Dependency
|
33
46
|
name: cucumber
|
34
47
|
requirement: !ruby/object:Gem::Requirement
|
35
|
-
none: false
|
36
48
|
requirements:
|
37
|
-
- -
|
49
|
+
- - '>='
|
38
50
|
- !ruby/object:Gem::Version
|
39
51
|
version: '0'
|
40
52
|
type: :development
|
41
53
|
prerelease: false
|
42
54
|
version_requirements: !ruby/object:Gem::Requirement
|
43
|
-
none: false
|
44
55
|
requirements:
|
45
|
-
- -
|
56
|
+
- - '>='
|
46
57
|
- !ruby/object:Gem::Version
|
47
58
|
version: '0'
|
48
59
|
- !ruby/object:Gem::Dependency
|
49
60
|
name: rspec
|
50
61
|
requirement: !ruby/object:Gem::Requirement
|
51
|
-
none: false
|
52
62
|
requirements:
|
53
|
-
- -
|
63
|
+
- - '>='
|
54
64
|
- !ruby/object:Gem::Version
|
55
65
|
version: '0'
|
56
66
|
type: :development
|
57
67
|
prerelease: false
|
58
68
|
version_requirements: !ruby/object:Gem::Requirement
|
59
|
-
none: false
|
60
69
|
requirements:
|
61
|
-
- -
|
70
|
+
- - '>='
|
62
71
|
- !ruby/object:Gem::Version
|
63
72
|
version: '0'
|
64
73
|
- !ruby/object:Gem::Dependency
|
65
74
|
name: aruba
|
66
75
|
requirement: !ruby/object:Gem::Requirement
|
67
|
-
none: false
|
68
76
|
requirements:
|
69
|
-
- -
|
77
|
+
- - '>='
|
70
78
|
- !ruby/object:Gem::Version
|
71
79
|
version: '0'
|
72
80
|
type: :development
|
73
81
|
prerelease: false
|
74
82
|
version_requirements: !ruby/object:Gem::Requirement
|
75
|
-
none: false
|
76
83
|
requirements:
|
77
|
-
- -
|
84
|
+
- - '>='
|
78
85
|
- !ruby/object:Gem::Version
|
79
86
|
version: '0'
|
80
87
|
- !ruby/object:Gem::Dependency
|
81
88
|
name: cucumber
|
82
89
|
requirement: !ruby/object:Gem::Requirement
|
83
|
-
none: false
|
84
90
|
requirements:
|
85
|
-
- -
|
91
|
+
- - '>='
|
86
92
|
- !ruby/object:Gem::Version
|
87
93
|
version: '0'
|
88
94
|
type: :runtime
|
89
95
|
prerelease: false
|
90
96
|
version_requirements: !ruby/object:Gem::Requirement
|
91
|
-
none: false
|
92
97
|
requirements:
|
93
|
-
- -
|
98
|
+
- - '>='
|
94
99
|
- !ruby/object:Gem::Version
|
95
100
|
version: '0'
|
96
101
|
description: HTML Report/Formatter for cucumber that allows user to modify erb in
|
@@ -99,13 +104,16 @@ email:
|
|
99
104
|
- jeff.morgan@leandog.com
|
100
105
|
- joelbyler@gmail.com
|
101
106
|
- steve.jackson@leandogsoftware.com
|
107
|
+
- sahithya.wintrich@gmail.com
|
108
|
+
- carl.shotwell@leandog.com
|
102
109
|
executables: []
|
103
110
|
extensions: []
|
104
111
|
extra_rdoc_files: []
|
105
112
|
files:
|
106
113
|
- .gitignore
|
107
114
|
- .rspec
|
108
|
-
- .
|
115
|
+
- .ruby-gemset
|
116
|
+
- .ruby-version
|
109
117
|
- .travis.yml
|
110
118
|
- ChangeLog
|
111
119
|
- Gemfile
|
@@ -120,6 +128,7 @@ files:
|
|
120
128
|
- features/support/_feature_header.erb
|
121
129
|
- features/support/_suite_header.erb
|
122
130
|
- features/support/env.rb
|
131
|
+
- features/support/error_display.rb
|
123
132
|
- features/support/hooks.rb
|
124
133
|
- features/support/logo.png
|
125
134
|
- features/support/pretty_face/blah.txt
|
@@ -171,28 +180,28 @@ files:
|
|
171
180
|
- spec/lib/html_formatter_spec.rb
|
172
181
|
- spec/spec_helper.rb
|
173
182
|
homepage: http://github.com/cheezy/pretty_face
|
174
|
-
licenses:
|
183
|
+
licenses:
|
184
|
+
- MIT
|
185
|
+
metadata: {}
|
175
186
|
post_install_message:
|
176
187
|
rdoc_options: []
|
177
188
|
require_paths:
|
178
189
|
- lib
|
179
190
|
required_ruby_version: !ruby/object:Gem::Requirement
|
180
|
-
none: false
|
181
191
|
requirements:
|
182
|
-
- -
|
192
|
+
- - '>='
|
183
193
|
- !ruby/object:Gem::Version
|
184
194
|
version: '0'
|
185
195
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
186
|
-
none: false
|
187
196
|
requirements:
|
188
|
-
- -
|
197
|
+
- - '>='
|
189
198
|
- !ruby/object:Gem::Version
|
190
199
|
version: '0'
|
191
200
|
requirements: []
|
192
201
|
rubyforge_project: pretty_face
|
193
|
-
rubygems_version:
|
202
|
+
rubygems_version: 2.0.3
|
194
203
|
signing_key:
|
195
|
-
specification_version:
|
204
|
+
specification_version: 4
|
196
205
|
summary: HTML Report/Formatter for Cucumber and RSpec
|
197
206
|
test_files:
|
198
207
|
- features/feature_pages.feature
|
@@ -201,6 +210,7 @@ test_files:
|
|
201
210
|
- features/support/_feature_header.erb
|
202
211
|
- features/support/_suite_header.erb
|
203
212
|
- features/support/env.rb
|
213
|
+
- features/support/error_display.rb
|
204
214
|
- features/support/hooks.rb
|
205
215
|
- features/support/logo.png
|
206
216
|
- features/support/pretty_face/blah.txt
|
data/.rvmrc
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
rvm 1.9.3-p392@testgen --create
|