closer 0.3.3 → 0.3.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.
- checksums.yaml +4 -4
- data/lib/closer/formatter/closer.css +8 -1
- data/lib/closer/formatter/closer.js +4 -4
- data/lib/closer/formatter/html.rb +16 -68
- data/lib/closer/version.rb +1 -1
- data/lib/tasks/close.rake +0 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9a149ca83e84f6b5e5ac4b43939f3d65baae40b0
|
4
|
+
data.tar.gz: 0b87e98693587ade1f7253eb47ccabc917b917d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a9e88d5b613b06eb0be447a7fc250750735ee7abe44d4b387ab72ebcdff728fd44c75132331f5b125eb94800957c85321aac8757381f8dcc806da4b02739b3ce
|
7
|
+
data.tar.gz: ffd7ac7a60fda69f80b5f64ccc422ff6cfafea13200b8f2372acd5c1dffe0852724d94eda3fa58cda7e09bc2d5ffdbdb2b43cdbc360f5228f81c06d589f77df0
|
@@ -56,7 +56,6 @@ div.feature h2 {
|
|
56
56
|
}
|
57
57
|
|
58
58
|
.step_contents {
|
59
|
-
display: none;
|
60
59
|
background: #FFFFFF;
|
61
60
|
border: solid 1px #999999;
|
62
61
|
margin-left: 1.2em;
|
@@ -156,6 +155,14 @@ del.differ {
|
|
156
155
|
background: #FFB6C1;
|
157
156
|
}
|
158
157
|
|
158
|
+
.hidden {
|
159
|
+
display: none;
|
160
|
+
}
|
161
|
+
|
162
|
+
.pointer {
|
163
|
+
cursor: pointer;
|
164
|
+
}
|
165
|
+
|
159
166
|
.screenshot {
|
160
167
|
border: solid 1px #999999;
|
161
168
|
border-radius: 5px 5px;
|
@@ -1,9 +1,9 @@
|
|
1
1
|
function toggle_feature_dir(feature_dir) {
|
2
|
-
$(feature_dir).parent('div.feature_dir').nextUntil('div.feature_dir').
|
2
|
+
$(feature_dir).parent('div.feature_dir').nextUntil('div.feature_dir').toggleClass('hidden');
|
3
3
|
};
|
4
4
|
|
5
5
|
function toggle_step_file(step_file) {
|
6
|
-
$(step_file).closest('li').next('.step_contents').
|
6
|
+
$(step_file).closest('li').next('.step_contents').toggleClass('hidden');
|
7
7
|
event.stopPropagation();
|
8
8
|
};
|
9
9
|
|
@@ -11,8 +11,8 @@ $(document).ready(function() {
|
|
11
11
|
$('li.step').each(function() {
|
12
12
|
var messages = $(this).nextUntil('li.step').filter('.message');
|
13
13
|
if (messages.length > 0) {
|
14
|
-
$(this).find('.val').
|
15
|
-
messages.
|
14
|
+
$(this).find('.val').addClass('pointer').click(function() {
|
15
|
+
messages.toggleClass('hidden');
|
16
16
|
});
|
17
17
|
}
|
18
18
|
});
|
@@ -38,41 +38,6 @@ module Closer
|
|
38
38
|
@previous_step_keyword = nil
|
39
39
|
end
|
40
40
|
|
41
|
-
def embed(src, mime_type, label)
|
42
|
-
case(mime_type)
|
43
|
-
when /^image\/(png|gif|jpg|jpeg)/
|
44
|
-
unless File.file?(src) or src =~ /^data:image\/(png|gif|jpg|jpeg);base64,/
|
45
|
-
type = mime_type =~ /;base[0-9]+$/ ? mime_type : mime_type + ";base64"
|
46
|
-
src = "data:" + type + "," + src
|
47
|
-
end
|
48
|
-
embed_image(src, label)
|
49
|
-
when /^text\/plain/
|
50
|
-
embed_text(src, label)
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
def embed_image(src, label)
|
55
|
-
id = "img_#{@img_id}"
|
56
|
-
@img_id += 1
|
57
|
-
if @io.respond_to?(:path) and File.file?(src)
|
58
|
-
out_dir = Pathname.new(File.dirname(File.absolute_path(@io.path)))
|
59
|
-
src = Pathname.new(File.absolute_path(src)).relative_path_from(out_dir)
|
60
|
-
end
|
61
|
-
@builder.span(:class => 'embed') do |pre|
|
62
|
-
pre << %{<a href="" onclick="img=document.getElementById('#{id}'); img.style.display = (img.style.display == 'none' ? 'block' : 'none');return false">#{label}</a><br>
|
63
|
-
<img id="#{id}" style="display: none" src="#{src}"/>}
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
def embed_text(src, label)
|
68
|
-
id = "text_#{@text_id}"
|
69
|
-
@text_id += 1
|
70
|
-
@builder.span(:class => 'embed') do |pre|
|
71
|
-
pre << %{<a id="#{id}" href="#{src}" title="#{label}">#{label}</a>}
|
72
|
-
end
|
73
|
-
end
|
74
|
-
|
75
|
-
|
76
41
|
def before_features(features)
|
77
42
|
@step_count = features && features.step_count || 0 #TODO: Make this work with core!
|
78
43
|
|
@@ -96,8 +61,8 @@ module Closer
|
|
96
61
|
@builder.p('',:id => 'totals')
|
97
62
|
@builder.p('',:id => 'duration')
|
98
63
|
@builder.div(:id => 'expand-collapse') do
|
99
|
-
@builder.p('Expand All', :id => 'expander', :
|
100
|
-
@builder.p('Collapse All', :id => 'collapser', :
|
64
|
+
@builder.p('Expand All', :id => 'expander', :class => 'pointer')
|
65
|
+
@builder.p('Collapse All', :id => 'collapser', :class => 'pointer')
|
101
66
|
end
|
102
67
|
end
|
103
68
|
end
|
@@ -210,7 +175,7 @@ module Closer
|
|
210
175
|
end
|
211
176
|
|
212
177
|
def scenario_name(keyword, name, file_colon_line, source_indent)
|
213
|
-
@builder.span(:class => 'scenario_file
|
178
|
+
@builder.span(:class => 'scenario_file hidden') do
|
214
179
|
@builder << file_colon_line
|
215
180
|
end
|
216
181
|
@listing_background = false
|
@@ -224,11 +189,11 @@ module Closer
|
|
224
189
|
lines = name.split("\n")
|
225
190
|
title = lines.shift
|
226
191
|
@builder.h3(:id => scenario_id) do
|
227
|
-
@builder.span(title, :class => 'val
|
192
|
+
@builder.span(title, :class => 'val pointer')
|
228
193
|
end
|
229
194
|
|
230
195
|
if lines.size > 0
|
231
|
-
@builder.pre(:class => 'narrative
|
196
|
+
@builder.pre(:class => 'narrative hidden') do
|
232
197
|
trim_size = indent_size(lines.first)
|
233
198
|
@builder << lines.map{|line| line[trim_size..-1] }.join("\n")
|
234
199
|
end
|
@@ -264,7 +229,7 @@ module Closer
|
|
264
229
|
end
|
265
230
|
|
266
231
|
def before_steps(steps)
|
267
|
-
@builder << '<ol
|
232
|
+
@builder << '<ol class="hidden">'
|
268
233
|
end
|
269
234
|
|
270
235
|
def after_steps(steps)
|
@@ -280,7 +245,6 @@ module Closer
|
|
280
245
|
end
|
281
246
|
|
282
247
|
def after_step(step)
|
283
|
-
move_progress
|
284
248
|
end
|
285
249
|
|
286
250
|
def before_step_result(keyword, step_match, multiline_arg, status, exception, source_indent, background, file_colon_line)
|
@@ -326,7 +290,7 @@ module Closer
|
|
326
290
|
|
327
291
|
unless status == :undefined
|
328
292
|
step_file = step_match.file_colon_line
|
329
|
-
step_contents = "<div class=\"step_contents\"><pre>"
|
293
|
+
step_contents = "<div class=\"step_contents hidden\"><pre>"
|
330
294
|
step_file.gsub(/^([^:]*\.rb):(\d*)/) do
|
331
295
|
line_index = $2.to_i - 1
|
332
296
|
|
@@ -414,7 +378,6 @@ module Closer
|
|
414
378
|
@outline_row += 1
|
415
379
|
end
|
416
380
|
@step_number += 1
|
417
|
-
move_progress
|
418
381
|
end
|
419
382
|
|
420
383
|
def table_cell_value(value, status)
|
@@ -438,7 +401,7 @@ module Closer
|
|
438
401
|
|
439
402
|
#@builder.ol do
|
440
403
|
@delayed_messages.each do |ann|
|
441
|
-
@builder.li(:class => 'message
|
404
|
+
@builder.li(:class => 'message hidden') do
|
442
405
|
@builder << ann
|
443
406
|
end
|
444
407
|
end
|
@@ -539,7 +502,7 @@ module Closer
|
|
539
502
|
|
540
503
|
step_file = step_match.file_colon_line
|
541
504
|
step_file.gsub(/^([^:]*\.rb):(\d*)/) do
|
542
|
-
step_file = "<span
|
505
|
+
step_file = "<span class=\"pointer\" onclick=\"toggle_step_file(this); return false;\">#{step_file}</span>"
|
543
506
|
|
544
507
|
@builder.div(:class => 'step_file') do |div|
|
545
508
|
@builder.span do
|
@@ -603,12 +566,13 @@ module Closer
|
|
603
566
|
});
|
604
567
|
|
605
568
|
$("#collapser").click(function() {
|
606
|
-
$(SCENARIOS).siblings().
|
607
|
-
$('li.message').
|
569
|
+
$(SCENARIOS).siblings().addClass('hidden');
|
570
|
+
$('li.message').addClass('hidden');
|
608
571
|
});
|
609
572
|
|
610
573
|
$("#expander").click(function() {
|
611
|
-
$(SCENARIOS).siblings().
|
574
|
+
$(SCENARIOS).siblings().removeClass('hidden');
|
575
|
+
$('li.message').removeClass('hidden');
|
612
576
|
});
|
613
577
|
})
|
614
578
|
|
@@ -627,35 +591,19 @@ module Closer
|
|
627
591
|
EOF
|
628
592
|
end
|
629
593
|
|
630
|
-
def move_progress
|
631
|
-
#@builder << " <script type=\"text/javascript\">moveProgressBar('#{percent_done}');</script>"
|
632
|
-
end
|
633
|
-
|
634
|
-
def percent_done
|
635
|
-
result = 100.0
|
636
|
-
if @step_count != 0
|
637
|
-
result = ((@step_number).to_f / @step_count.to_f * 1000).to_i / 10.0
|
638
|
-
end
|
639
|
-
result
|
640
|
-
end
|
641
|
-
|
642
594
|
def format_exception(exception)
|
643
595
|
(["#{exception.message}"] + exception.backtrace).join("\n")
|
644
596
|
end
|
645
597
|
|
646
598
|
def backtrace_line(line)
|
647
599
|
line.gsub(/^([^:]*\.(?:rb|feature|haml)):(\d*).*$/) do
|
648
|
-
|
649
|
-
"<a href=\"txmt://open?url=file://#{File.expand_path($1)}&line=#{$2}\">#{$1}:#{$2}</a> "
|
650
|
-
else
|
651
|
-
line
|
652
|
-
end
|
600
|
+
line
|
653
601
|
end
|
654
602
|
end
|
655
603
|
|
656
604
|
def print_stats(features)
|
657
|
-
@builder << "<script
|
658
|
-
@builder << "<script
|
605
|
+
@builder << "<script>document.getElementById('duration').innerHTML = \"Finished in <strong>#{format_duration(features.duration)} seconds</strong>\";</script>"
|
606
|
+
@builder << "<script>document.getElementById('totals').innerHTML = \"#{print_stat_string(features)}\";</script>"
|
659
607
|
end
|
660
608
|
|
661
609
|
def print_stat_string(features)
|
data/lib/closer/version.rb
CHANGED
data/lib/tasks/close.rake
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: closer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ichy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-03-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cucumber
|
@@ -99,7 +99,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
99
99
|
version: '0'
|
100
100
|
requirements: []
|
101
101
|
rubyforge_project:
|
102
|
-
rubygems_version: 2.
|
102
|
+
rubygems_version: 2.6.2
|
103
103
|
signing_key:
|
104
104
|
specification_version: 4
|
105
105
|
summary: Cucumber test execution tool
|