daddy 0.2.7 → 0.2.8

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: 3fef71f23757a0256ea073f08a95c2593e4b8014
4
- data.tar.gz: 2032e0975c7a772420f926022582a57e842e303f
3
+ metadata.gz: 2d4ad32eaae407fd291eedbd20a88e76feb13321
4
+ data.tar.gz: 6deb92df011c598a5dedda1cbbb48fe303a1950d
5
5
  SHA512:
6
- metadata.gz: d7ec3101c579edd6247808c3ef0975a58390e153cf2e90d006eb88df07556451256c39e5429487eea15fd83fc8e564bd94361a968207e6ab8a010ca62fbb9f19
7
- data.tar.gz: f0403f11a52727e2af426a86c61a5a095a7d0e92eac26289b50e308459450e8a16f27f64fba79c0262457e4b61678662f8ad92cef4fbe1cc40f95ba5ff6c09b4
6
+ metadata.gz: c2385c08140b96b0ab160ae54e981aada47c09b755afb7eefc7a25c974dbeaaebd417c2fff7170b7490c861faf585530e7d85723ed1691108f069cafc34e6af2
7
+ data.tar.gz: 85c1960c8f461472e7021decadff0f9c670d470989897fa40c595923b43da5778599025f068a08fc37b135f12238366f7b601a0a12b4e14b7d94e9fbca22cfd7
data/lib/daddy.rb CHANGED
@@ -9,16 +9,16 @@ else
9
9
  end
10
10
  end
11
11
 
12
+ require 'daddy/utils/config'
12
13
  require 'daddy/utils/string_utils'
13
14
  require 'prefecture'
14
15
  require 'sql_builder'
15
16
  require 'tax'
16
17
 
17
18
  module Daddy
18
- require 'daddy/config'
19
19
 
20
20
  def self.config
21
- @_config ||= Daddy::Config.new(config_file = File.join('config', 'daddy.yml'))
21
+ @_config ||= Daddy::Utils::Config.new(File.join('config', 'daddy.yml'))
22
22
  end
23
23
 
24
24
  end
@@ -3,11 +3,12 @@
3
3
  module Daddy
4
4
  module Cucumber
5
5
  module Capture
6
- REPORT_DIR = 'features/reports'
6
+ REPORT_DIR = File.join('features', 'reports')
7
7
  IMAGE_DIR = 'images'
8
8
  FileUtils.mkdir_p("#{REPORT_DIR}/#{IMAGE_DIR}")
9
9
 
10
10
  @@_screen_count = 0
11
+ @@_images = []
11
12
 
12
13
  def capture(options = {})
13
14
  pause
@@ -20,7 +21,11 @@ module Daddy
20
21
  image = "#{IMAGE_DIR}/#{@@_screen_count}.png"
21
22
  page.driver.save_screenshot("#{REPORT_DIR}/#{image}", :full => true)
22
23
 
23
- puts "<img class=\"screenshot\" src=\"#{image}\" alt=\"#{url}\"/>"
24
+ if options[:flash]
25
+ puts "<img class=\"screenshot\" src=\"#{image}\" alt=\"#{url}\"/>"
26
+ else
27
+ @@_images << "<img class=\"screenshot\" src=\"#{image}\" alt=\"#{url}\"/>"
28
+ end
24
29
  end
25
30
 
26
31
  def resize_window(width, height)
@@ -34,8 +39,17 @@ module Daddy
34
39
  end
35
40
  end
36
41
 
42
+ def flash_image_tags
43
+ puts @@_images.join("\n")
44
+ @@_images.clear
45
+ end
46
+
37
47
  end
38
48
  end
39
49
  end
40
50
 
41
51
  World(Daddy::Cucumber::Capture)
52
+
53
+ AfterStep do |step|
54
+ flash_image_tags
55
+ end
@@ -174,11 +174,10 @@ del.differ {
174
174
  }
175
175
 
176
176
  .screenshot {
177
- display: block;
178
177
  border: solid 1px #999999;
179
178
  border-radius: 5px 5px;
180
179
  margin: 5px 0;
181
- padding: 1%;
180
+ padding: 5px;
182
181
  background: #ffffff;
183
182
  width: 32%;
184
183
  height: 32%;
@@ -125,7 +125,7 @@ module Daddy
125
125
  @builder.span(:class => 'val') do
126
126
  @builder << title
127
127
 
128
- if Daddy.config.use_feature_name?
128
+ if Daddy.config.cucumber.use_feature_name?
129
129
  subtitle = lines.first.to_s.strip
130
130
  unless subtitle.blank?
131
131
  @builder.span('(' + subtitle + ')', :class => 'feature_subtitle')
@@ -0,0 +1,49 @@
1
+ # coding: UTF-8
2
+
3
+ module Daddy
4
+ module Utils
5
+
6
+ class Config < Hash
7
+
8
+ def initialize(yaml_path_or_hash = nil)
9
+ if yaml_path_or_hash.is_a?(Hash)
10
+ @hash = hash
11
+ else
12
+ if yaml_path_or_hash and File.exist?(yaml_path_or_hash)
13
+ @hash = YAML.load_file(yaml_path_or_hash)
14
+ else
15
+ @hash = {}
16
+ end
17
+ end
18
+ end
19
+
20
+ def [](key)
21
+ ret = false
22
+
23
+ if key.to_s.end_with?('?')
24
+ ret = @hash[key.to_s[0..-2]] ? true : false
25
+ else
26
+ ret = @hash[key.to_s]
27
+
28
+ if ret.nil?
29
+ ret = self.class.new
30
+ elsif ret.is_a?(Hash)
31
+ ret = self.class.new(ret)
32
+ end
33
+ end
34
+
35
+ ret
36
+ end
37
+
38
+ def []=(key, value)
39
+ @hash[key.to_s] = value
40
+ end
41
+
42
+ def method_missing(name, *args)
43
+ self[name]
44
+ end
45
+
46
+ end
47
+
48
+ end
49
+ end
@@ -8,7 +8,7 @@ namespace :dad do
8
8
 
9
9
  desc "Fluentdをインストールします。"
10
10
  task :install do
11
- if Daddy.config.fluentd_nginx?
11
+ if Daddy.config.fluentd.nginx?
12
12
  nginx = File.join(Rails.root, 'tmp', 'fluentd', "#{app_name}_nginx.conf")
13
13
  FileUtils.mkdir_p(File.dirname(nginx))
14
14
  File.write(nginx, ERB.new(File.read(File.join(File.dirname(__FILE__), 'fluentd_nginx.conf.erb'))).result)
@@ -41,7 +41,10 @@ fi
41
41
  EOF
42
42
  tmpfile = File.join(Rails.root, 'tmp', 'dad-fluentd-install-' + Daddy::Utils::StringUtils.current_time + '.sh')
43
43
  File.write(tmpfile, ERB.new(script).result)
44
- fail unless system("bash #{tmpfile}")
44
+
45
+ unless ENV['DRY_RUN']
46
+ fail unless system("bash #{tmpfile}")
47
+ end
45
48
  end
46
49
  end
47
50
  end
metadata CHANGED
@@ -1,299 +1,299 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: daddy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - ichy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-16 00:00:00.000000000 Z
11
+ date: 2014-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capybara
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '2.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: cucumber
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.3'
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.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: cucumber-rails
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '1.4'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.4'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: ci_reporter
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '1.9'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '1.9'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: database_cleaner
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ~>
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '1.2'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ~>
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '1.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: differ
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ~>
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ~>
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: execjs
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
103
  version: '2.0'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '2.0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: faraday
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ~>
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0.9'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ~>
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0.9'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: holiday_jp
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ~>
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ~>
136
+ - - "~>"
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: poltergeist
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ~>
143
+ - - "~>"
144
144
  - !ruby/object:Gem::Version
145
145
  version: '1.5'
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - ~>
150
+ - - "~>"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '1.5'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: rails
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ~>
157
+ - - "~>"
158
158
  - !ruby/object:Gem::Version
159
159
  version: '3.2'
160
- - - '>='
160
+ - - ">="
161
161
  - !ruby/object:Gem::Version
162
162
  version: 3.2.0
163
163
  type: :runtime
164
164
  prerelease: false
165
165
  version_requirements: !ruby/object:Gem::Requirement
166
166
  requirements:
167
- - - ~>
167
+ - - "~>"
168
168
  - !ruby/object:Gem::Version
169
169
  version: '3.2'
170
- - - '>='
170
+ - - ">="
171
171
  - !ruby/object:Gem::Version
172
172
  version: 3.2.0
173
173
  - !ruby/object:Gem::Dependency
174
174
  name: rails-i18n
175
175
  requirement: !ruby/object:Gem::Requirement
176
176
  requirements:
177
- - - ~>
177
+ - - "~>"
178
178
  - !ruby/object:Gem::Version
179
179
  version: '3.0'
180
180
  type: :runtime
181
181
  prerelease: false
182
182
  version_requirements: !ruby/object:Gem::Requirement
183
183
  requirements:
184
- - - ~>
184
+ - - "~>"
185
185
  - !ruby/object:Gem::Version
186
186
  version: '3.0'
187
187
  - !ruby/object:Gem::Dependency
188
188
  name: resque
189
189
  requirement: !ruby/object:Gem::Requirement
190
190
  requirements:
191
- - - ~>
191
+ - - "~>"
192
192
  - !ruby/object:Gem::Version
193
193
  version: '1.25'
194
194
  type: :runtime
195
195
  prerelease: false
196
196
  version_requirements: !ruby/object:Gem::Requirement
197
197
  requirements:
198
- - - ~>
198
+ - - "~>"
199
199
  - !ruby/object:Gem::Version
200
200
  version: '1.25'
201
201
  - !ruby/object:Gem::Dependency
202
202
  name: resque-scheduler
203
203
  requirement: !ruby/object:Gem::Requirement
204
204
  requirements:
205
- - - ~>
205
+ - - "~>"
206
206
  - !ruby/object:Gem::Version
207
207
  version: '2.5'
208
208
  type: :runtime
209
209
  prerelease: false
210
210
  version_requirements: !ruby/object:Gem::Requirement
211
211
  requirements:
212
- - - ~>
212
+ - - "~>"
213
213
  - !ruby/object:Gem::Version
214
214
  version: '2.5'
215
215
  - !ruby/object:Gem::Dependency
216
216
  name: rugged
217
217
  requirement: !ruby/object:Gem::Requirement
218
218
  requirements:
219
- - - ~>
219
+ - - "~>"
220
220
  - !ruby/object:Gem::Version
221
221
  version: '0.19'
222
222
  type: :runtime
223
223
  prerelease: false
224
224
  version_requirements: !ruby/object:Gem::Requirement
225
225
  requirements:
226
- - - ~>
226
+ - - "~>"
227
227
  - !ruby/object:Gem::Version
228
228
  version: '0.19'
229
229
  - !ruby/object:Gem::Dependency
230
230
  name: selenium-webdriver
231
231
  requirement: !ruby/object:Gem::Requirement
232
232
  requirements:
233
- - - ~>
233
+ - - "~>"
234
234
  - !ruby/object:Gem::Version
235
235
  version: '2.39'
236
236
  type: :runtime
237
237
  prerelease: false
238
238
  version_requirements: !ruby/object:Gem::Requirement
239
239
  requirements:
240
- - - ~>
240
+ - - "~>"
241
241
  - !ruby/object:Gem::Version
242
242
  version: '2.39'
243
243
  - !ruby/object:Gem::Dependency
244
244
  name: simplecov
245
245
  requirement: !ruby/object:Gem::Requirement
246
246
  requirements:
247
- - - ~>
247
+ - - "~>"
248
248
  - !ruby/object:Gem::Version
249
249
  version: '0'
250
250
  type: :runtime
251
251
  prerelease: false
252
252
  version_requirements: !ruby/object:Gem::Requirement
253
253
  requirements:
254
- - - ~>
254
+ - - "~>"
255
255
  - !ruby/object:Gem::Version
256
256
  version: '0'
257
257
  - !ruby/object:Gem::Dependency
258
258
  name: simplecov-rcov
259
259
  requirement: !ruby/object:Gem::Requirement
260
260
  requirements:
261
- - - ~>
261
+ - - "~>"
262
262
  - !ruby/object:Gem::Version
263
263
  version: '0'
264
264
  type: :runtime
265
265
  prerelease: false
266
266
  version_requirements: !ruby/object:Gem::Requirement
267
267
  requirements:
268
- - - ~>
268
+ - - "~>"
269
269
  - !ruby/object:Gem::Version
270
270
  version: '0'
271
271
  - !ruby/object:Gem::Dependency
272
272
  name: term-ansicolor
273
273
  requirement: !ruby/object:Gem::Requirement
274
274
  requirements:
275
- - - ~>
275
+ - - "~>"
276
276
  - !ruby/object:Gem::Version
277
277
  version: '1.2'
278
278
  type: :runtime
279
279
  prerelease: false
280
280
  version_requirements: !ruby/object:Gem::Requirement
281
281
  requirements:
282
- - - ~>
282
+ - - "~>"
283
283
  - !ruby/object:Gem::Version
284
284
  version: '1.2'
285
285
  - !ruby/object:Gem::Dependency
286
286
  name: rails-csv-fixtures
287
287
  requirement: !ruby/object:Gem::Requirement
288
288
  requirements:
289
- - - ~>
289
+ - - "~>"
290
290
  - !ruby/object:Gem::Version
291
291
  version: '0'
292
292
  type: :development
293
293
  prerelease: false
294
294
  version_requirements: !ruby/object:Gem::Requirement
295
295
  requirements:
296
- - - ~>
296
+ - - "~>"
297
297
  - !ruby/object:Gem::Version
298
298
  version: '0'
299
299
  description: Daddy helps me build web applications since daddy knows some good practices.
@@ -305,7 +305,6 @@ extra_rdoc_files: []
305
305
  files:
306
306
  - bin/dad
307
307
  - lib/daddy.rb
308
- - lib/daddy/config.rb
309
308
  - lib/daddy/cucumber.rb
310
309
  - lib/daddy/cucumber/assert.rb
311
310
  - lib/daddy/cucumber/capture.rb
@@ -338,6 +337,7 @@ files:
338
337
  - lib/daddy/rails/engine.rb
339
338
  - lib/daddy/rails/quiet_assets.rb
340
339
  - lib/daddy/rails/railtie.rb
340
+ - lib/daddy/utils/config.rb
341
341
  - lib/daddy/utils/sql_utils.rb
342
342
  - lib/daddy/utils/string_utils.rb
343
343
  - lib/prefecture.rb
@@ -403,12 +403,12 @@ require_paths:
403
403
  - lib
404
404
  required_ruby_version: !ruby/object:Gem::Requirement
405
405
  requirements:
406
- - - '>='
406
+ - - ">="
407
407
  - !ruby/object:Gem::Version
408
408
  version: 1.9.3
409
409
  required_rubygems_version: !ruby/object:Gem::Requirement
410
410
  requirements:
411
- - - '>='
411
+ - - ">="
412
412
  - !ruby/object:Gem::Version
413
413
  version: '0'
414
414
  requirements: []
data/lib/daddy/config.rb DELETED
@@ -1,22 +0,0 @@
1
- # coding: UTF-8
2
-
3
- class Daddy::Config
4
-
5
- def initialize(config_file)
6
- if @config.nil?
7
- if File.exist?(config_file)
8
- @config = YAML.load_file(config_file)
9
- else
10
- @config = {}
11
- end
12
- end
13
- end
14
-
15
- def use_feature_name?
16
- @config['cucumber'] && !!@config['cucumber']['use_feature_name']
17
- end
18
-
19
- def fluentd_nginx?
20
- @config['fluentd'] && !!@config['fluentd']['nginx']
21
- end
22
- end