daddy 0.1.12 → 0.1.13
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/daddy/cucumber.rb +1 -0
- data/lib/daddy/cucumber/capture.rb +1 -1
- data/lib/daddy/cucumber/diff.rb +21 -21
- data/lib/daddy/differ/html_patch.rb +13 -0
- data/lib/daddy/formatter/daddy.css +1 -0
- data/lib/daddy/formatter/daddy_html.rb +9 -1
- data/lib/daddy/formatter/html.rb +21 -38
- data/lib/daddy/formatter/menu.html.erb +25 -14
- data/lib/tasks/cucumber_install.rake +2 -0
- data/lib/tasks/diary.rake +13 -1
- data/lib/tasks/publish.rake +63 -20
- metadata +77 -44
- checksums.yaml +0 -15
data/lib/daddy/cucumber.rb
CHANGED
data/lib/daddy/cucumber/diff.rb
CHANGED
@@ -6,7 +6,7 @@ module Daddy
|
|
6
6
|
|
7
7
|
def git_diff(file, options = {})
|
8
8
|
options[:as] ||= 'edit'
|
9
|
-
|
9
|
+
|
10
10
|
git = Daddy::Git.new
|
11
11
|
a = File.read(file).gsub(/[<>]/, '<' => '<', '>' => '>')
|
12
12
|
b = git.show_previous(file, true).gsub(/[<>]/, '<' => '<', '>' => '>')
|
@@ -15,7 +15,7 @@ module Daddy
|
|
15
15
|
show_filename(file, options)
|
16
16
|
puts "<pre>#{diff}</pre>"
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
def git_diff_name(*includes)
|
20
20
|
git = Daddy::Git.new
|
21
21
|
puts '<pre>' + git.git_diff_name(*includes) + '</pre>'
|
@@ -32,7 +32,24 @@ module Daddy
|
|
32
32
|
|
33
33
|
def show(file, options = {})
|
34
34
|
show_filename(file, options)
|
35
|
-
|
35
|
+
|
36
|
+
lines = File.readlines(file)
|
37
|
+
|
38
|
+
if options[:from] and options[:to]
|
39
|
+
from = options[:from] - 1
|
40
|
+
to = options[:to] - 1
|
41
|
+
lines = lines[from..to]
|
42
|
+
elsif options[:from]
|
43
|
+
from = options[:from] - 1
|
44
|
+
lines = lines[from..-1]
|
45
|
+
elsif options[:to]
|
46
|
+
to = options[:to] - 1
|
47
|
+
lines = lines[0..to]
|
48
|
+
end
|
49
|
+
|
50
|
+
lines = lines.join.gsub(/[<>]/, '<' => '<', '>' => '>')
|
51
|
+
puts "<pre>#{lines}</pre>"
|
52
|
+
|
36
53
|
end
|
37
54
|
|
38
55
|
private
|
@@ -64,8 +81,6 @@ module Daddy
|
|
64
81
|
end
|
65
82
|
|
66
83
|
def format_diff(diff, options = {})
|
67
|
-
lines = []
|
68
|
-
|
69
84
|
diff_lines = diff.to_s.split("\n")
|
70
85
|
|
71
86
|
if options[:from] and options[:to]
|
@@ -80,22 +95,7 @@ module Daddy
|
|
80
95
|
diff_lines = diff_lines[0..to]
|
81
96
|
end
|
82
97
|
|
83
|
-
diff_lines.
|
84
|
-
if line.index('</del><ins class="differ">')
|
85
|
-
split = line.split('</del><ins class="differ">')
|
86
|
-
lines << split[0]
|
87
|
-
if split[1].start_with?('"')
|
88
|
-
lines << '</del><ins class="differ">"'
|
89
|
-
lines << split[1][1..-1]
|
90
|
-
else
|
91
|
-
lines << '</del><ins class="differ">' + split[1]
|
92
|
-
end
|
93
|
-
else
|
94
|
-
lines << line
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
lines.join("\n")
|
98
|
+
diff_lines.join("\n")
|
99
99
|
end
|
100
100
|
|
101
101
|
end
|
@@ -31,7 +31,15 @@ module Daddy
|
|
31
31
|
FileUtils.mkdir_p('tmp')
|
32
32
|
menu = File.join('tmp', 'menu.html')
|
33
33
|
system("erb -T - #{File.dirname(__FILE__)}/menu.html.erb > #{menu}")
|
34
|
-
File.
|
34
|
+
File.read(menu)
|
35
|
+
end
|
36
|
+
|
37
|
+
def feature_id
|
38
|
+
@feature.file.gsub(/(\/|\.|\\)/, '_')
|
39
|
+
end
|
40
|
+
|
41
|
+
def scenario_id
|
42
|
+
feature_id + '_scenario_' + @scenario_number.to_s
|
35
43
|
end
|
36
44
|
|
37
45
|
def feature_dir(feature, short = false)
|
data/lib/daddy/formatter/html.rb
CHANGED
@@ -49,14 +49,7 @@ module Daddy
|
|
49
49
|
def before_features(features)
|
50
50
|
@step_count = features.step_count
|
51
51
|
|
52
|
-
|
53
|
-
@builder.declare!(
|
54
|
-
:DOCTYPE,
|
55
|
-
:html,
|
56
|
-
:PUBLIC,
|
57
|
-
'-//W3C//DTD XHTML 1.0 Strict//EN',
|
58
|
-
'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'
|
59
|
-
)
|
52
|
+
@builder.declare!(:DOCTYPE, :html)
|
60
53
|
|
61
54
|
@builder << '<html>'
|
62
55
|
@builder.head do
|
@@ -107,7 +100,7 @@ module Daddy
|
|
107
100
|
|
108
101
|
@feature = feature
|
109
102
|
@exceptions = []
|
110
|
-
@builder <<
|
103
|
+
@builder << "<div id=\"#{feature_id}\" class=\"feature\">"
|
111
104
|
end
|
112
105
|
|
113
106
|
def after_feature(feature)
|
@@ -170,7 +163,7 @@ module Daddy
|
|
170
163
|
|
171
164
|
def background_name(keyword, name, file_colon_line, source_indent)
|
172
165
|
@listing_background = true
|
173
|
-
@builder.h3(:id =>
|
166
|
+
@builder.h3(:id => scenario_id) do |h3|
|
174
167
|
@builder.span(keyword, :class => 'keyword')
|
175
168
|
@builder.text!(' ')
|
176
169
|
@builder.span(name, :class => 'val')
|
@@ -201,7 +194,7 @@ module Daddy
|
|
201
194
|
@listing_background = false
|
202
195
|
|
203
196
|
lines = name.split("\n")
|
204
|
-
@builder.h3(:id =>
|
197
|
+
@builder.h3(:id => scenario_id) do
|
205
198
|
@builder.span(lines[0], :class => 'val')
|
206
199
|
end
|
207
200
|
|
@@ -336,6 +329,7 @@ module Daddy
|
|
336
329
|
end
|
337
330
|
|
338
331
|
def exception(exception, status)
|
332
|
+
return if @hide_this_step
|
339
333
|
build_exception_detail(exception)
|
340
334
|
end
|
341
335
|
|
@@ -419,14 +413,14 @@ module Daddy
|
|
419
413
|
|
420
414
|
#@builder.ol do
|
421
415
|
@delayed_messages.each_with_index do |ann, i|
|
422
|
-
@builder.li(:id => "#{@
|
416
|
+
@builder.li(:id => "#{@step_id}_#{i}", :class => 'step message', :style => 'display: none;') do
|
423
417
|
@builder << ann
|
424
418
|
end
|
425
419
|
end
|
426
420
|
@builder.script do |script|
|
427
421
|
script << "$(function() {"
|
428
422
|
script << " $('##{@step_id}').css('cursor', 'pointer').click(function() {"
|
429
|
-
script << " $(this).nextAll('li[id^=\"#{@
|
423
|
+
script << " $(this).nextAll('li[id^=\"#{@step_id}_\"]').toggle(250);"
|
430
424
|
script << " });"
|
431
425
|
script << "});"
|
432
426
|
end
|
@@ -484,21 +478,17 @@ module Daddy
|
|
484
478
|
|
485
479
|
def set_scenario_color_failed
|
486
480
|
@builder.script do
|
487
|
-
unless @header_red
|
488
|
-
@builder.text!("makeRed('cucumber-header');")
|
489
|
-
end
|
481
|
+
@builder.text!("makeRed('cucumber-header');") unless @header_red
|
490
482
|
@header_red = true
|
491
|
-
@builder.text!("makeRed('
|
483
|
+
@builder.text!("makeRed('#{scenario_id}');") unless @scenario_red
|
492
484
|
@scenario_red = true
|
493
485
|
end
|
494
486
|
end
|
495
487
|
|
496
488
|
def set_scenario_color_pending
|
497
489
|
@builder.script do
|
498
|
-
unless @header_red
|
499
|
-
|
500
|
-
end
|
501
|
-
@builder.text!("makeYellow('scenario_#{@scenario_number}');") unless @scenario_red
|
490
|
+
@builder.text!("makeYellow('cucumber-header');") unless @header_red
|
491
|
+
@builder.text!("makeYellow('#{scenario_id}');") unless @scenario_red
|
502
492
|
end
|
503
493
|
end
|
504
494
|
|
@@ -525,21 +515,21 @@ module Daddy
|
|
525
515
|
end
|
526
516
|
end
|
527
517
|
|
528
|
-
step_file = step_match.file_colon_line
|
518
|
+
step_file = step_match.file_colon_line.force_encoding('UTF-8')
|
529
519
|
step_file.gsub(/^([^:]*\.rb):(\d*)/) do
|
530
520
|
if index = $1.index('lib/daddy/cucumber/step_definitions/')
|
531
521
|
step_file = "daddy: " + $1[index..-1]
|
532
522
|
end
|
533
|
-
|
534
|
-
step_file = "<span id=\"step_file_#{@
|
523
|
+
|
524
|
+
step_file = "<span id=\"step_file_#{@step_id}\">#{step_file}:#{$2}</span>"
|
535
525
|
end
|
536
526
|
|
537
527
|
@builder.div(:class => 'step_file') do |div|
|
538
528
|
@builder.span do
|
539
|
-
@builder << step_file
|
529
|
+
@builder << step_file
|
540
530
|
@builder.script do |script|
|
541
531
|
script << "$(function() {"
|
542
|
-
script << " $('#step_file_#{@
|
532
|
+
script << " $('#step_file_#{@step_id}').css('cursor', 'pointer').click(function(event) {"
|
543
533
|
script << " $(this).closest('li').next('.step_contents').toggle(250);"
|
544
534
|
script << " event.stopImmediatePropagation();"
|
545
535
|
script << " });"
|
@@ -591,7 +581,7 @@ module Daddy
|
|
591
581
|
def inline_js_content
|
592
582
|
<<-EOF
|
593
583
|
|
594
|
-
SCENARIOS = "h3[id
|
584
|
+
SCENARIOS = "h3[id*='_scenario_'],h3[id*='_background_']";
|
595
585
|
|
596
586
|
$(document).ready(function() {
|
597
587
|
$(SCENARIOS).css('cursor', 'pointer');
|
@@ -618,19 +608,12 @@ module Daddy
|
|
618
608
|
function makeRed(element_id) {
|
619
609
|
$('#'+element_id).css('background', '#C40D0D');
|
620
610
|
$('#'+element_id).css('color', '#FFFFFF');
|
621
|
-
|
622
|
-
if (element_id.indexOf('scenario_' == 0)) {
|
623
|
-
$('#'+element_id).prev('.scenario_file').css('color', '#FFFFFF');
|
624
|
-
}
|
625
611
|
}
|
626
612
|
function makeYellow(element_id) {
|
627
613
|
$('#'+element_id).css('background', '#FAF834');
|
628
614
|
$('#'+element_id).css('color', '#000000');
|
629
|
-
|
630
|
-
if (element_id.indexOf('scenario_' == 0)) {
|
631
|
-
$('#'+element_id).prev('.scenario_file').css('color', '#000000');
|
632
|
-
}
|
633
615
|
}
|
616
|
+
|
634
617
|
EOF
|
635
618
|
end
|
636
619
|
|
@@ -661,8 +644,8 @@ module Daddy
|
|
661
644
|
end
|
662
645
|
|
663
646
|
def print_stats(features)
|
664
|
-
@builder << "<script
|
665
|
-
@builder << "<script
|
647
|
+
@builder << "<script>document.getElementById('duration').innerHTML = \"Finished in <strong>#{format_duration(features.duration)} seconds</strong>\";</script>"
|
648
|
+
@builder << "<script>document.getElementById('totals').innerHTML = \"#{print_stat_string(features)}\";</script>"
|
666
649
|
end
|
667
650
|
|
668
651
|
def print_stat_string(features)
|
@@ -739,4 +722,4 @@ module Daddy
|
|
739
722
|
end
|
740
723
|
end
|
741
724
|
end
|
742
|
-
end
|
725
|
+
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
<%
|
2
2
|
load File.dirname(File.dirname(__FILE__)) + '/git.rb'
|
3
3
|
git = Daddy::Git.new
|
4
|
+
title = ENV['TITLE'].sub(' ', '_').downcase
|
4
5
|
-%>
|
5
6
|
|
6
7
|
<script>
|
@@ -21,19 +22,29 @@
|
|
21
22
|
|
22
23
|
<% git.branches.each do |b| %>
|
23
24
|
<ol>
|
24
|
-
<%
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
25
|
+
<% if b == 'master' %>
|
26
|
+
<li class="master">
|
27
|
+
<%= '最新' %>
|
28
|
+
</li>
|
29
|
+
<li class="sub_menu">
|
30
|
+
<a href="/<%= title %>/">開発日記</a>
|
31
|
+
</li>
|
32
|
+
<li class="sub_menu">
|
33
|
+
<a href="/<%= title %>/master/spec/">仕様書</a>
|
34
|
+
</li>
|
35
|
+
<li class="sub_menu">
|
36
|
+
<a href="/<%= title %>/master/coverage/rcov/" target="_blank">カバレッジ</a>
|
37
|
+
</li>
|
38
|
+
<% else %>
|
39
|
+
<li class="sprint <%= 'current' if b == git.current_branch %>">
|
40
|
+
<%= 'スプリント ' + b.gsub(/[a-zA-Z]*/, '') %>
|
41
|
+
</li>
|
42
|
+
<li class="sub_menu" style="display: none;">
|
43
|
+
<a href="/<%= title %>/<%= b %>/spec/">仕様書</a>
|
44
|
+
</li>
|
45
|
+
<li class="sub_menu" style="display: none;">
|
46
|
+
<a href="/<%= title %>/<%= b %>/coverage/rcov/" target="_blank">カバレッジ</a>
|
47
|
+
</li>
|
48
|
+
<% end %>
|
38
49
|
</ol>
|
39
50
|
<% end %>
|
data/lib/tasks/diary.rake
CHANGED
@@ -16,7 +16,7 @@ namespace :dad do
|
|
16
16
|
task :new do
|
17
17
|
today = Date.today.strftime('%Y-%m-%d')
|
18
18
|
|
19
|
-
|
19
|
+
Rake::Task['dad:cucumber:install'].invoke
|
20
20
|
|
21
21
|
feature = "features/開発日記/#{today}.feature"
|
22
22
|
unless File.exist?(feature)
|
@@ -36,5 +36,17 @@ namespace :dad do
|
|
36
36
|
EOF
|
37
37
|
end
|
38
38
|
end
|
39
|
+
|
40
|
+
desc '開発日記を削除します。'
|
41
|
+
task :destroy do
|
42
|
+
Dir[File.join('features', '開発日記', '*.feature')].each do |file|
|
43
|
+
puts "#{file} を削除します。"
|
44
|
+
FileUtils.rm_f(file)
|
45
|
+
end
|
46
|
+
Dir[File.join('features', 'step_definitions', '開発日記', '*.rb')].each do |file|
|
47
|
+
puts "#{file} を削除します。"
|
48
|
+
FileUtils.rm_f(file)
|
49
|
+
end
|
50
|
+
end
|
39
51
|
end
|
40
52
|
end
|
data/lib/tasks/publish.rake
CHANGED
@@ -1,49 +1,92 @@
|
|
1
1
|
# coding: UTF-8
|
2
2
|
|
3
3
|
require 'daddy/git'
|
4
|
+
require 'nokogiri'
|
4
5
|
|
5
6
|
namespace :dad do
|
6
7
|
task :publish do
|
7
8
|
fail('環境編集 TITLE を指定してください。') unless ENV['TITLE'] and not ENV['TITLE'].empty?
|
8
9
|
|
9
10
|
if File.exist?("db/schema.rb")
|
10
|
-
fail unless system(
|
11
|
+
fail unless system('rake db:schema:load RAILS_ENV=test')
|
11
12
|
end
|
12
13
|
|
13
14
|
system("mkdir -p features/reports")
|
14
15
|
system("rm -Rf features/reports/*")
|
15
16
|
|
16
|
-
fail unless system("bundle exec rake dad:cucumber PUBLISH=true features/開発日記")
|
17
|
+
fail unless system("bundle exec rake dad:cucumber PUBLISH=true EXPAND=false COVERAGE=false features/開発日記")
|
17
18
|
system("mkdir -p features/reports/diary")
|
18
19
|
system("mv features/reports/index.html features/reports/diary")
|
19
20
|
system("mv features/reports/images features/reports/diary")
|
20
21
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
if ENV['BRANCH']
|
27
|
-
current_branch = ENV['BRANCH']
|
28
|
-
else
|
29
|
-
git = Daddy::Git.new
|
30
|
-
current_branch = git.current_branch
|
22
|
+
unless ENV['SKIP_SPEC']
|
23
|
+
fail unless system("bundle exec rake dad:cucumber PUBLISH=true EXPAND=false features/仕様書")
|
24
|
+
system("mkdir -p features/reports/spec")
|
25
|
+
system("mv features/reports/index.html features/reports/spec")
|
26
|
+
system("mv features/reports/images features/reports/spec")
|
31
27
|
end
|
32
28
|
|
33
|
-
|
34
|
-
|
35
|
-
system("sudo chown -R #{ENV['USER']}:#{ENV['USER']} #{dir}")
|
29
|
+
git = Daddy::Git.new
|
30
|
+
branch = git.current_branch
|
36
31
|
|
37
|
-
|
38
|
-
|
39
|
-
system("
|
32
|
+
# 公開
|
33
|
+
base_dir = dad_publish_base_dir(ENV['TITLE'])
|
34
|
+
system("sudo mkdir -p #{base_dir}")
|
35
|
+
system("sudo chown -R #{ENV['USER']}:#{ENV['USER']} #{base_dir}")
|
36
|
+
system("mkdir -p #{base_dir}/#{branch}")
|
37
|
+
system("rm -Rf #{base_dir}/#{branch}/*")
|
38
|
+
system("cp -Rf features/reports/* #{base_dir}/#{branch}/")
|
40
39
|
if File.exist? 'coverage'
|
41
|
-
system("cp -Rf coverage #{
|
40
|
+
system("cp -Rf coverage #{base_dir}/#{branch}/")
|
41
|
+
end
|
42
|
+
|
43
|
+
# 開発日記を統合
|
44
|
+
if branch == 'master'
|
45
|
+
features = []
|
46
|
+
features += dad_publish_extract_features(base_dir + '/master')
|
47
|
+
|
48
|
+
Dir[base_dir + '/p*'].sort{|a, b| File.basename(b)[1..-1].to_i <=> File.basename(a)[1..-1].to_i}.each do |dir|
|
49
|
+
features += dad_publish_extract_features(dir)
|
50
|
+
end
|
51
|
+
|
52
|
+
# 空HTMLを生成
|
53
|
+
system("bundle exec rake dad:cucumber PUBLISH=true EXPAND=false COVERAGE=false features/support")
|
54
|
+
|
55
|
+
doc = Nokogiri::HTML(File.read('features/reports/index.html'))
|
56
|
+
contents_div = doc.css('div.contents').first
|
57
|
+
features.each do |div|
|
58
|
+
contents_div.add_child(div)
|
59
|
+
end
|
60
|
+
File.write("#{base_dir}/index.html", doc)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
65
|
+
|
66
|
+
def self.dad_publish_extract_features(dir)
|
67
|
+
ret = []
|
68
|
+
return [] unless File.exist?(dir) and File.directory?(dir)
|
69
|
+
|
70
|
+
html = dir + '/diary/index.html'
|
71
|
+
return [] unless File.exist?(html)
|
72
|
+
|
73
|
+
doc = Nokogiri::HTML(File.read(html))
|
74
|
+
doc.css('div.feature').each do |div|
|
75
|
+
div.css('img.screenshot').each do |img|
|
76
|
+
img['src'] = File.basename(dir) + '/diary/' + img['src']
|
42
77
|
end
|
78
|
+
ret << div
|
43
79
|
end
|
44
80
|
|
81
|
+
ret = ret.sort{|a, b| b['id'] <=> a['id']}
|
82
|
+
|
83
|
+
ret
|
84
|
+
end
|
85
|
+
|
86
|
+
def self.dad_publish_base_dir(title)
|
87
|
+
'/var/lib/daddy/' + dad_publish_title_to_dirname(title)
|
45
88
|
end
|
46
89
|
|
47
|
-
def self.
|
90
|
+
def self.dad_publish_title_to_dirname(title)
|
48
91
|
title.sub(' ', '_').downcase
|
49
92
|
end
|
metadata
CHANGED
@@ -1,18 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: daddy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.13
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- ichy
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2013-09-
|
12
|
+
date: 2013-09-14 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: capybara
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
19
|
- - ! '>='
|
18
20
|
- !ruby/object:Gem::Version
|
@@ -20,6 +22,7 @@ dependencies:
|
|
20
22
|
type: :runtime
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
27
|
- - ! '>='
|
25
28
|
- !ruby/object:Gem::Version
|
@@ -27,6 +30,7 @@ dependencies:
|
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: cucumber
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
35
|
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
@@ -34,6 +38,7 @@ dependencies:
|
|
34
38
|
type: :runtime
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
43
|
- - ! '>='
|
39
44
|
- !ruby/object:Gem::Version
|
@@ -41,6 +46,7 @@ dependencies:
|
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: cucumber-rails
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
51
|
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
@@ -48,6 +54,7 @@ dependencies:
|
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
59
|
- - ! '>='
|
53
60
|
- !ruby/object:Gem::Version
|
@@ -55,6 +62,7 @@ dependencies:
|
|
55
62
|
- !ruby/object:Gem::Dependency
|
56
63
|
name: ci_reporter
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
58
66
|
requirements:
|
59
67
|
- - ! '>='
|
60
68
|
- !ruby/object:Gem::Version
|
@@ -62,6 +70,7 @@ dependencies:
|
|
62
70
|
type: :runtime
|
63
71
|
prerelease: false
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
65
74
|
requirements:
|
66
75
|
- - ! '>='
|
67
76
|
- !ruby/object:Gem::Version
|
@@ -69,6 +78,7 @@ dependencies:
|
|
69
78
|
- !ruby/object:Gem::Dependency
|
70
79
|
name: database_cleaner
|
71
80
|
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
72
82
|
requirements:
|
73
83
|
- - ! '>='
|
74
84
|
- !ruby/object:Gem::Version
|
@@ -76,6 +86,7 @@ dependencies:
|
|
76
86
|
type: :runtime
|
77
87
|
prerelease: false
|
78
88
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
79
90
|
requirements:
|
80
91
|
- - ! '>='
|
81
92
|
- !ruby/object:Gem::Version
|
@@ -83,6 +94,7 @@ dependencies:
|
|
83
94
|
- !ruby/object:Gem::Dependency
|
84
95
|
name: differ
|
85
96
|
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
86
98
|
requirements:
|
87
99
|
- - ! '>='
|
88
100
|
- !ruby/object:Gem::Version
|
@@ -90,6 +102,7 @@ dependencies:
|
|
90
102
|
type: :runtime
|
91
103
|
prerelease: false
|
92
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
93
106
|
requirements:
|
94
107
|
- - ! '>='
|
95
108
|
- !ruby/object:Gem::Version
|
@@ -97,6 +110,7 @@ dependencies:
|
|
97
110
|
- !ruby/object:Gem::Dependency
|
98
111
|
name: execjs
|
99
112
|
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
100
114
|
requirements:
|
101
115
|
- - ! '>='
|
102
116
|
- !ruby/object:Gem::Version
|
@@ -104,6 +118,7 @@ dependencies:
|
|
104
118
|
type: :runtime
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
107
122
|
requirements:
|
108
123
|
- - ! '>='
|
109
124
|
- !ruby/object:Gem::Version
|
@@ -111,6 +126,7 @@ dependencies:
|
|
111
126
|
- !ruby/object:Gem::Dependency
|
112
127
|
name: poltergeist
|
113
128
|
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
114
130
|
requirements:
|
115
131
|
- - ! '>='
|
116
132
|
- !ruby/object:Gem::Version
|
@@ -118,6 +134,7 @@ dependencies:
|
|
118
134
|
type: :runtime
|
119
135
|
prerelease: false
|
120
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
121
138
|
requirements:
|
122
139
|
- - ! '>='
|
123
140
|
- !ruby/object:Gem::Version
|
@@ -125,6 +142,7 @@ dependencies:
|
|
125
142
|
- !ruby/object:Gem::Dependency
|
126
143
|
name: rails
|
127
144
|
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
128
146
|
requirements:
|
129
147
|
- - ~>
|
130
148
|
- !ruby/object:Gem::Version
|
@@ -132,6 +150,7 @@ dependencies:
|
|
132
150
|
type: :runtime
|
133
151
|
prerelease: false
|
134
152
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
135
154
|
requirements:
|
136
155
|
- - ~>
|
137
156
|
- !ruby/object:Gem::Version
|
@@ -139,6 +158,7 @@ dependencies:
|
|
139
158
|
- !ruby/object:Gem::Dependency
|
140
159
|
name: rails-i18n
|
141
160
|
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
142
162
|
requirements:
|
143
163
|
- - ! '>='
|
144
164
|
- !ruby/object:Gem::Version
|
@@ -146,6 +166,7 @@ dependencies:
|
|
146
166
|
type: :runtime
|
147
167
|
prerelease: false
|
148
168
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
149
170
|
requirements:
|
150
171
|
- - ! '>='
|
151
172
|
- !ruby/object:Gem::Version
|
@@ -153,6 +174,7 @@ dependencies:
|
|
153
174
|
- !ruby/object:Gem::Dependency
|
154
175
|
name: selenium-webdriver
|
155
176
|
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
156
178
|
requirements:
|
157
179
|
- - ! '>='
|
158
180
|
- !ruby/object:Gem::Version
|
@@ -160,6 +182,7 @@ dependencies:
|
|
160
182
|
type: :runtime
|
161
183
|
prerelease: false
|
162
184
|
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
163
186
|
requirements:
|
164
187
|
- - ! '>='
|
165
188
|
- !ruby/object:Gem::Version
|
@@ -167,6 +190,7 @@ dependencies:
|
|
167
190
|
- !ruby/object:Gem::Dependency
|
168
191
|
name: simplecov
|
169
192
|
requirement: !ruby/object:Gem::Requirement
|
193
|
+
none: false
|
170
194
|
requirements:
|
171
195
|
- - ! '>='
|
172
196
|
- !ruby/object:Gem::Version
|
@@ -174,6 +198,7 @@ dependencies:
|
|
174
198
|
type: :runtime
|
175
199
|
prerelease: false
|
176
200
|
version_requirements: !ruby/object:Gem::Requirement
|
201
|
+
none: false
|
177
202
|
requirements:
|
178
203
|
- - ! '>='
|
179
204
|
- !ruby/object:Gem::Version
|
@@ -181,6 +206,7 @@ dependencies:
|
|
181
206
|
- !ruby/object:Gem::Dependency
|
182
207
|
name: simplecov-rcov
|
183
208
|
requirement: !ruby/object:Gem::Requirement
|
209
|
+
none: false
|
184
210
|
requirements:
|
185
211
|
- - ! '>='
|
186
212
|
- !ruby/object:Gem::Version
|
@@ -188,6 +214,7 @@ dependencies:
|
|
188
214
|
type: :runtime
|
189
215
|
prerelease: false
|
190
216
|
version_requirements: !ruby/object:Gem::Requirement
|
217
|
+
none: false
|
191
218
|
requirements:
|
192
219
|
- - ! '>='
|
193
220
|
- !ruby/object:Gem::Version
|
@@ -195,6 +222,7 @@ dependencies:
|
|
195
222
|
- !ruby/object:Gem::Dependency
|
196
223
|
name: term-ansicolor
|
197
224
|
requirement: !ruby/object:Gem::Requirement
|
225
|
+
none: false
|
198
226
|
requirements:
|
199
227
|
- - ! '>='
|
200
228
|
- !ruby/object:Gem::Version
|
@@ -202,6 +230,7 @@ dependencies:
|
|
202
230
|
type: :runtime
|
203
231
|
prerelease: false
|
204
232
|
version_requirements: !ruby/object:Gem::Requirement
|
233
|
+
none: false
|
205
234
|
requirements:
|
206
235
|
- - ! '>='
|
207
236
|
- !ruby/object:Gem::Version
|
@@ -209,6 +238,7 @@ dependencies:
|
|
209
238
|
- !ruby/object:Gem::Dependency
|
210
239
|
name: rails-csv-fixtures
|
211
240
|
requirement: !ruby/object:Gem::Requirement
|
241
|
+
none: false
|
212
242
|
requirements:
|
213
243
|
- - ! '>='
|
214
244
|
- !ruby/object:Gem::Version
|
@@ -216,6 +246,7 @@ dependencies:
|
|
216
246
|
type: :development
|
217
247
|
prerelease: false
|
218
248
|
version_requirements: !ruby/object:Gem::Requirement
|
249
|
+
none: false
|
219
250
|
requirements:
|
220
251
|
- - ! '>='
|
221
252
|
- !ruby/object:Gem::Version
|
@@ -226,82 +257,84 @@ executables: []
|
|
226
257
|
extensions: []
|
227
258
|
extra_rdoc_files: []
|
228
259
|
files:
|
229
|
-
- lib/
|
230
|
-
- lib/
|
231
|
-
- lib/
|
260
|
+
- lib/tasks/dad.rake
|
261
|
+
- lib/tasks/db_config.rake
|
262
|
+
- lib/tasks/nginx.app.conf.erb
|
263
|
+
- lib/tasks/unicorn.erb
|
264
|
+
- lib/tasks/jenkins
|
265
|
+
- lib/tasks/nginx.rake
|
266
|
+
- lib/tasks/db_fixtures.rake
|
267
|
+
- lib/tasks/cucumber.rake
|
268
|
+
- lib/tasks/jenkins.conf
|
269
|
+
- lib/tasks/cucumber_install.rake
|
270
|
+
- lib/tasks/database.yml.erb
|
271
|
+
- lib/tasks/nginx.repo
|
272
|
+
- lib/tasks/phantomjs.rake
|
273
|
+
- lib/tasks/test.rake
|
274
|
+
- lib/tasks/nginx.conf.erb
|
275
|
+
- lib/tasks/db_create.rake
|
276
|
+
- lib/tasks/nginx.jenkins.conf.erb
|
277
|
+
- lib/tasks/publish.rake
|
278
|
+
- lib/tasks/jenkins.rake
|
279
|
+
- lib/tasks/cucumber_steps.rake
|
280
|
+
- lib/tasks/unicorn.rake
|
281
|
+
- lib/tasks/diary.rake
|
282
|
+
- lib/tasks/unicorn.rb.erb
|
283
|
+
- lib/daddy/railtie.rb
|
232
284
|
- lib/daddy/cucumber/diff.rb
|
233
|
-
- lib/daddy/cucumber/formatting.rb
|
234
285
|
- lib/daddy/cucumber/html.rb
|
286
|
+
- lib/daddy/cucumber/capture.rb
|
287
|
+
- lib/daddy/cucumber/assert.rb
|
288
|
+
- lib/daddy/cucumber/formatting.rb
|
235
289
|
- lib/daddy/cucumber/pause.rb
|
236
290
|
- lib/daddy/cucumber/step_definitions/click.rb
|
237
|
-
- lib/daddy/cucumber/step_definitions/common.rb
|
238
|
-
- lib/daddy/cucumber/step_definitions/fill_in.rb
|
239
291
|
- lib/daddy/cucumber/step_definitions/select.rb
|
292
|
+
- lib/daddy/cucumber/step_definitions/fill_in.rb
|
293
|
+
- lib/daddy/cucumber/step_definitions/common.rb
|
240
294
|
- lib/daddy/cucumber/table.rb
|
241
|
-
- lib/daddy/
|
295
|
+
- lib/daddy/formatter/daddy.js
|
242
296
|
- lib/daddy/formatter/cucumber.css
|
297
|
+
- lib/daddy/formatter/html.rb
|
243
298
|
- lib/daddy/formatter/daddy.css
|
244
|
-
- lib/daddy/formatter/
|
299
|
+
- lib/daddy/formatter/menu.html.erb
|
245
300
|
- lib/daddy/formatter/daddy_html.rb
|
246
|
-
- lib/daddy/formatter/html.rb
|
247
301
|
- lib/daddy/formatter/jquery-min.js
|
248
|
-
- lib/daddy/
|
249
|
-
- lib/daddy/
|
250
|
-
- lib/daddy/
|
251
|
-
- lib/daddy/model.rb
|
302
|
+
- lib/daddy/differ/html_patch.rb
|
303
|
+
- lib/daddy/rails/quiet_assets.rb
|
304
|
+
- lib/daddy/rails/hooks.rb
|
252
305
|
- lib/daddy/models/crud_extension.rb
|
253
306
|
- lib/daddy/models/query_extension.rb
|
254
|
-
- lib/daddy/
|
255
|
-
- lib/daddy/
|
256
|
-
- lib/daddy/
|
307
|
+
- lib/daddy/git.rb
|
308
|
+
- lib/daddy/capistrano/remote_cache_subdir.rb
|
309
|
+
- lib/daddy/helpers/html_helper.rb
|
257
310
|
- lib/daddy/utils/sql_utils.rb
|
311
|
+
- lib/daddy/model.rb
|
312
|
+
- lib/daddy/cucumber.rb
|
258
313
|
- lib/daddy.rb
|
259
314
|
- lib/sql_builder.rb
|
260
|
-
- lib/tasks/cucumber.rake
|
261
|
-
- lib/tasks/cucumber_install.rake
|
262
|
-
- lib/tasks/cucumber_steps.rake
|
263
|
-
- lib/tasks/dad.rake
|
264
|
-
- lib/tasks/database.yml.erb
|
265
|
-
- lib/tasks/db_config.rake
|
266
|
-
- lib/tasks/db_create.rake
|
267
|
-
- lib/tasks/db_fixtures.rake
|
268
|
-
- lib/tasks/diary.rake
|
269
|
-
- lib/tasks/jenkins
|
270
|
-
- lib/tasks/jenkins.conf
|
271
|
-
- lib/tasks/jenkins.rake
|
272
|
-
- lib/tasks/nginx.app.conf.erb
|
273
|
-
- lib/tasks/nginx.conf.erb
|
274
|
-
- lib/tasks/nginx.jenkins.conf.erb
|
275
|
-
- lib/tasks/nginx.rake
|
276
|
-
- lib/tasks/nginx.repo
|
277
|
-
- lib/tasks/phantomjs.rake
|
278
|
-
- lib/tasks/publish.rake
|
279
|
-
- lib/tasks/test.rake
|
280
|
-
- lib/tasks/unicorn.erb
|
281
|
-
- lib/tasks/unicorn.rake
|
282
|
-
- lib/tasks/unicorn.rb.erb
|
283
315
|
homepage: https://github.com/ichylinux/daddy
|
284
316
|
licenses:
|
285
317
|
- MIT
|
286
|
-
metadata: {}
|
287
318
|
post_install_message:
|
288
319
|
rdoc_options: []
|
289
320
|
require_paths:
|
290
321
|
- lib
|
291
322
|
required_ruby_version: !ruby/object:Gem::Requirement
|
323
|
+
none: false
|
292
324
|
requirements:
|
293
325
|
- - ! '>='
|
294
326
|
- !ruby/object:Gem::Version
|
295
327
|
version: '0'
|
296
328
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
329
|
+
none: false
|
297
330
|
requirements:
|
298
331
|
- - ! '>='
|
299
332
|
- !ruby/object:Gem::Version
|
300
333
|
version: '0'
|
301
334
|
requirements: []
|
302
335
|
rubyforge_project:
|
303
|
-
rubygems_version:
|
336
|
+
rubygems_version: 1.8.24
|
304
337
|
signing_key:
|
305
|
-
specification_version:
|
338
|
+
specification_version: 3
|
306
339
|
summary: My rails dad
|
307
340
|
test_files: []
|
checksums.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
---
|
2
|
-
!binary "U0hBMQ==":
|
3
|
-
metadata.gz: !binary |-
|
4
|
-
YmNlNjY0NTQwNzNjYjdlZTVlOWM1Yzc3N2EzNzZlYjFjYjRkZWYyNw==
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
YjRlZDVhNTIwMmRjNjc2ZGNhOGQ5ZmU5NTA5OWQ1OGNkOTZkODA1ZA==
|
7
|
-
!binary "U0hBNTEy":
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
YjFhNjFkOTRmOTJjMWE0Y2I0N2EyMTQzODg0YzRmNjk3N2QyNGU5NjdiMmY2
|
10
|
-
MGIyMjNhODZhZTQ0YjMwZmJhNDg4OTYzYzk3ZmUwNjcwNDc3NjA0NjY3Mjg1
|
11
|
-
ODAyNDVhNjgwYzRlM2VmNWEyNGIyOTBjZWNlZjQxZDM3ODY3NGY=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
MmZlYTc4ZWU2YWJiODg4NmZkZmY3MTQ0ZTNiMzQ5NDEwZmU2ZTcyY2JmMDlj
|
14
|
-
NmJiZGQ4OWE4ZmI4YmYxMmQ5NTMxNjk5ZDQ4OGI4ZGYxMjYzMmNmMzdiYjFi
|
15
|
-
NmQ4MzE0YzAyZTM0M2FkZjZkMTYxMjc3NTM0NDcyNzNmNzU3MWM=
|