oxen_media 0.0.2

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.
Files changed (71) hide show
  1. checksums.yaml +7 -0
  2. data/.bowerrc +3 -0
  3. data/.envrc +1 -0
  4. data/.gitignore +11 -0
  5. data/.rspec +3 -0
  6. data/.ruby-version +1 -0
  7. data/Gemfile +16 -0
  8. data/Gemfile.lock +331 -0
  9. data/Guardfile +135 -0
  10. data/MIT-LICENSE +20 -0
  11. data/README.rdoc +31 -0
  12. data/Rakefile +15 -0
  13. data/app/assets/images/oxen_media/.keep +0 -0
  14. data/app/assets/javascripts/jsrender.min.js +4 -0
  15. data/app/assets/javascripts/jsrender.min.js.map +463 -0
  16. data/app/assets/javascripts/oxen_media.js +3 -0
  17. data/app/assets/javascripts/oxen_media/.keep +0 -0
  18. data/app/assets/javascripts/oxen_media/carrier_wave_cropper.js.coffee +22 -0
  19. data/app/assets/javascripts/oxen_media/media.js.coffee +469 -0
  20. data/app/assets/javascripts/oxen_media/medium_pane.js.coffee +107 -0
  21. data/app/assets/javascripts/templates/selected_files.html +35 -0
  22. data/app/assets/stylesheets/media.css +10 -0
  23. data/app/assets/stylesheets/oxen_media/.keep +0 -0
  24. data/app/assets/stylesheets/scaffold.css +56 -0
  25. data/app/controllers/.keep +0 -0
  26. data/app/controllers/media_controller.rb +106 -0
  27. data/app/helpers/.keep +0 -0
  28. data/app/helpers/media_helper.rb +2 -0
  29. data/app/mailers/.keep +0 -0
  30. data/app/models/.keep +0 -0
  31. data/app/models/concerns/roleable.rb +61 -0
  32. data/app/models/medium.rb +25 -0
  33. data/app/policies/oxen_medium_policy.rb +12 -0
  34. data/app/uploaders/medium_uploader.rb +106 -0
  35. data/app/views/.keep +0 -0
  36. data/app/views/media/_fields.html.haml +42 -0
  37. data/app/views/media/_form.html.haml +48 -0
  38. data/app/views/media/_media.html.haml +18 -0
  39. data/app/views/media/_medium.html.haml +25 -0
  40. data/app/views/media/_medium_fields.html.haml +4 -0
  41. data/app/views/media/create.js.haml +2 -0
  42. data/app/views/media/crop.html.haml +3 -0
  43. data/app/views/media/edit.html.haml +2 -0
  44. data/app/views/media/index.html.haml +29 -0
  45. data/app/views/media/index.json.jbuilder +4 -0
  46. data/app/views/media/new.html.erb +5 -0
  47. data/app/views/media/show.html.haml +21 -0
  48. data/app/views/media/show.json.jbuilder +1 -0
  49. data/app/views/media/update_crop.js.haml +1 -0
  50. data/bin/rails +12 -0
  51. data/config/initializers/backtrace_silencers.rb +9 -0
  52. data/config/initializers/carrier_wave.rb +11 -0
  53. data/config/initializers/simple_form.rb +14 -0
  54. data/config/locales/media.en.yml +20 -0
  55. data/config/routes.rb +6 -0
  56. data/db/migrate/20150629071720_create_media.rb +13 -0
  57. data/lib/generators/media/USAGE +8 -0
  58. data/lib/generators/media/media_generator.rb +48 -0
  59. data/lib/generators/media/templates/medium.rb +13 -0
  60. data/lib/oxen_media.rb +7 -0
  61. data/lib/oxen_media/engine.rb +19 -0
  62. data/lib/oxen_media/version.rb +3 -0
  63. data/lib/tasks/oxen_media_tasks.rake +4 -0
  64. data/oxen_media.gemspec +59 -0
  65. data/test/controllers/media_controller_test.rb +49 -0
  66. data/test/fixtures/media.yml +17 -0
  67. data/test/integration/oxen_media_test.rb +7 -0
  68. data/test/lib/generators/media_generator_test.rb +14 -0
  69. data/test/models/medium_test.rb +7 -0
  70. data/test/test_helper.rb +13 -0
  71. metadata +387 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 8884d3a2298175bfa7108a1c8507436a84457667
4
+ data.tar.gz: 202a2d45076d37baed189cb3ecfe5bee30ec86e4
5
+ SHA512:
6
+ metadata.gz: a800debd118b021cc32ab7d5d2970ffa96e262787d243bbaedf3e7f9f0fee6f1063d7ac446efdd2ea3c0289fdea2b315200ea70994bc0b2c545389369cc1032d
7
+ data.tar.gz: 0d198f4bb19808b74cd7256f3d2cf61fb5fca9cdc0b79646be6e616a120d4d3240cd224ee35cc63e084fe42df54b040964bd75d7dbf970f95f78bbf50055baf7
data/.bowerrc ADDED
@@ -0,0 +1,3 @@
1
+ {
2
+ "directory": "vendor/assets/components"
3
+ }
data/.envrc ADDED
@@ -0,0 +1 @@
1
+ export PATH=$PWD/bin:$PATH
data/.gitignore ADDED
@@ -0,0 +1,11 @@
1
+ .bundle/
2
+ log/*.log
3
+ pkg/
4
+ test/dummy/db/*.sqlite3
5
+ test/dummy/db/*.sqlite3-journal
6
+ test/dummy/log/*.log
7
+ test/dummy/tmp/
8
+ test/dummy/.sass-cache
9
+ spring/*
10
+ public/uploads
11
+ *gem
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --color
2
+ --require spec_helper
3
+ --format documentation
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 2.1.2
data/Gemfile ADDED
@@ -0,0 +1,16 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Declare your gem's dependencies in abstracted.gemspec.
4
+ # Bundler will treat runtime dependencies like base dependencies, and
5
+ # development dependencies will be added by default to the :development group.
6
+ gemspec
7
+
8
+ # Declare any dependencies that are still in development here instead of in
9
+ # your gemspec. These might include edge Rails or gems from your path or
10
+ # Git. Remember to move these dependencies to your gemspec before releasing
11
+ # your gem to rubygems.org.
12
+
13
+ # To use a debugger
14
+ # gem 'byebug', group: [:development, :test]
15
+
16
+ gem 'abstracted', path: '../abstracted'
data/Gemfile.lock ADDED
@@ -0,0 +1,331 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ oxen_media (0.0.1)
5
+ carrierwave
6
+ carrierwave-crop
7
+ carrierwave-processing
8
+ fog
9
+ mini_magick
10
+ pundit
11
+ rails (~> 4.2.1)
12
+
13
+ PATH
14
+ remote: ../abstracted
15
+ specs:
16
+ abstracted (0.0.7)
17
+ pundit
18
+ rails (~> 4.1)
19
+ responders
20
+
21
+ GEM
22
+ remote: https://rubygems.org/
23
+ specs:
24
+ CFPropertyList (2.3.1)
25
+ actionmailer (4.2.2)
26
+ actionpack (= 4.2.2)
27
+ actionview (= 4.2.2)
28
+ activejob (= 4.2.2)
29
+ mail (~> 2.5, >= 2.5.4)
30
+ rails-dom-testing (~> 1.0, >= 1.0.5)
31
+ actionpack (4.2.2)
32
+ actionview (= 4.2.2)
33
+ activesupport (= 4.2.2)
34
+ rack (~> 1.6)
35
+ rack-test (~> 0.6.2)
36
+ rails-dom-testing (~> 1.0, >= 1.0.5)
37
+ rails-html-sanitizer (~> 1.0, >= 1.0.1)
38
+ actionview (4.2.2)
39
+ activesupport (= 4.2.2)
40
+ builder (~> 3.1)
41
+ erubis (~> 2.7.0)
42
+ rails-dom-testing (~> 1.0, >= 1.0.5)
43
+ rails-html-sanitizer (~> 1.0, >= 1.0.1)
44
+ activejob (4.2.2)
45
+ activesupport (= 4.2.2)
46
+ globalid (>= 0.3.0)
47
+ activemodel (4.2.2)
48
+ activesupport (= 4.2.2)
49
+ builder (~> 3.1)
50
+ activerecord (4.2.2)
51
+ activemodel (= 4.2.2)
52
+ activesupport (= 4.2.2)
53
+ arel (~> 6.0)
54
+ activesupport (4.2.2)
55
+ i18n (~> 0.7)
56
+ json (~> 1.7, >= 1.7.7)
57
+ minitest (~> 5.1)
58
+ thread_safe (~> 0.3, >= 0.3.4)
59
+ tzinfo (~> 1.1)
60
+ ansi (1.5.0)
61
+ arel (6.0.0)
62
+ builder (3.2.2)
63
+ capybara (2.4.4)
64
+ mime-types (>= 1.16)
65
+ nokogiri (>= 1.3.3)
66
+ rack (>= 1.0.0)
67
+ rack-test (>= 0.5.4)
68
+ xpath (~> 2.0)
69
+ carrierwave (0.10.0)
70
+ activemodel (>= 3.2.0)
71
+ activesupport (>= 3.2.0)
72
+ json (>= 1.7)
73
+ mime-types (>= 1.16)
74
+ carrierwave-crop (0.1.2)
75
+ carrierwave (>= 0.8.0, < 0.11.0)
76
+ jquery-rails
77
+ rails (>= 3.2)
78
+ carrierwave-processing (1.1.0)
79
+ carrierwave
80
+ celluloid (0.16.0)
81
+ timers (~> 4.0.0)
82
+ coderay (1.1.0)
83
+ combustion (0.5.3)
84
+ activesupport (>= 3.0.0)
85
+ railties (>= 3.0.0)
86
+ thor (>= 0.14.6)
87
+ database_cleaner (1.4.1)
88
+ erubis (2.7.0)
89
+ excon (0.45.3)
90
+ factory_girl (4.5.0)
91
+ activesupport (>= 3.0.0)
92
+ factory_girl_rails (4.5.0)
93
+ factory_girl (~> 4.5.0)
94
+ railties (>= 3.0.0)
95
+ ffi (1.9.8)
96
+ fission (0.5.0)
97
+ CFPropertyList (~> 2.2)
98
+ fog (1.32.0)
99
+ fog-atmos
100
+ fog-aws (>= 0.6.0)
101
+ fog-brightbox (~> 0.4)
102
+ fog-core (~> 1.32)
103
+ fog-ecloud (= 0.1.1)
104
+ fog-google (>= 0.0.2)
105
+ fog-json
106
+ fog-local
107
+ fog-powerdns (>= 0.1.1)
108
+ fog-profitbricks
109
+ fog-radosgw (>= 0.0.2)
110
+ fog-riakcs
111
+ fog-sakuracloud (>= 0.0.4)
112
+ fog-serverlove
113
+ fog-softlayer
114
+ fog-storm_on_demand
115
+ fog-terremark
116
+ fog-vmfusion
117
+ fog-voxel
118
+ fog-xml (~> 0.1.1)
119
+ ipaddress (~> 0.5)
120
+ nokogiri (~> 1.5, >= 1.5.11)
121
+ fog-atmos (0.1.0)
122
+ fog-core
123
+ fog-xml
124
+ fog-aws (0.6.0)
125
+ fog-core (~> 1.27)
126
+ fog-json (~> 1.0)
127
+ fog-xml (~> 0.1)
128
+ ipaddress (~> 0.8)
129
+ fog-brightbox (0.7.2)
130
+ fog-core (~> 1.22)
131
+ fog-json
132
+ inflecto (~> 0.0.2)
133
+ fog-core (1.32.0)
134
+ builder
135
+ excon (~> 0.45)
136
+ formatador (~> 0.2)
137
+ mime-types
138
+ net-scp (~> 1.1)
139
+ net-ssh (>= 2.1.3)
140
+ fog-ecloud (0.1.1)
141
+ fog-core
142
+ fog-xml
143
+ fog-google (0.0.6)
144
+ fog-core
145
+ fog-json
146
+ fog-xml
147
+ fog-json (1.0.2)
148
+ fog-core (~> 1.0)
149
+ multi_json (~> 1.10)
150
+ fog-local (0.2.1)
151
+ fog-core (~> 1.27)
152
+ fog-powerdns (0.1.1)
153
+ fog-core (~> 1.27)
154
+ fog-json (~> 1.0)
155
+ fog-xml (~> 0.1)
156
+ fog-profitbricks (0.0.3)
157
+ fog-core
158
+ fog-xml
159
+ nokogiri
160
+ fog-radosgw (0.0.4)
161
+ fog-core (>= 1.21.0)
162
+ fog-json
163
+ fog-xml (>= 0.0.1)
164
+ fog-riakcs (0.1.0)
165
+ fog-core
166
+ fog-json
167
+ fog-xml
168
+ fog-sakuracloud (1.0.1)
169
+ fog-core
170
+ fog-json
171
+ fog-serverlove (0.1.2)
172
+ fog-core
173
+ fog-json
174
+ fog-softlayer (0.4.7)
175
+ fog-core
176
+ fog-json
177
+ fog-storm_on_demand (0.1.1)
178
+ fog-core
179
+ fog-json
180
+ fog-terremark (0.1.0)
181
+ fog-core
182
+ fog-xml
183
+ fog-vmfusion (0.1.0)
184
+ fission
185
+ fog-core
186
+ fog-voxel (0.1.0)
187
+ fog-core
188
+ fog-xml
189
+ fog-xml (0.1.2)
190
+ fog-core
191
+ nokogiri (~> 1.5, >= 1.5.11)
192
+ formatador (0.2.5)
193
+ globalid (0.3.5)
194
+ activesupport (>= 4.1.0)
195
+ guard (2.12.6)
196
+ formatador (>= 0.2.4)
197
+ listen (~> 2.7)
198
+ lumberjack (~> 1.0)
199
+ nenv (~> 0.1)
200
+ notiffany (~> 0.0)
201
+ pry (>= 0.9.12)
202
+ shellany (~> 0.0)
203
+ thor (>= 0.18.1)
204
+ guard-minitest (2.3.1)
205
+ guard (~> 2.0)
206
+ minitest (>= 3.0)
207
+ hitimes (1.2.2)
208
+ i18n (0.7.0)
209
+ inflecto (0.0.2)
210
+ ipaddress (0.8.0)
211
+ jquery-rails (4.0.4)
212
+ rails-dom-testing (~> 1.0)
213
+ railties (>= 4.2.0)
214
+ thor (>= 0.14, < 2.0)
215
+ json (1.8.3)
216
+ listen (2.10.1)
217
+ celluloid (~> 0.16.0)
218
+ rb-fsevent (>= 0.9.3)
219
+ rb-inotify (>= 0.9)
220
+ loofah (2.0.2)
221
+ nokogiri (>= 1.5.9)
222
+ lumberjack (1.0.9)
223
+ mail (2.6.3)
224
+ mime-types (>= 1.16, < 3)
225
+ method_source (0.8.2)
226
+ mime-types (2.6.1)
227
+ mini_backtrace (0.1.3)
228
+ minitest (> 1.2.0)
229
+ rails (>= 2.3.3)
230
+ mini_magick (4.2.7)
231
+ mini_portile (0.6.2)
232
+ minitest (5.7.0)
233
+ minitest-reporters (1.0.5)
234
+ ansi
235
+ builder
236
+ minitest (>= 5.0)
237
+ ruby-progressbar
238
+ multi_json (1.11.1)
239
+ nenv (0.2.0)
240
+ net-scp (1.2.1)
241
+ net-ssh (>= 2.6.5)
242
+ net-ssh (2.9.2)
243
+ nokogiri (1.6.6.2)
244
+ mini_portile (~> 0.6.0)
245
+ notiffany (0.0.6)
246
+ nenv (~> 0.1)
247
+ shellany (~> 0.0)
248
+ pry (0.10.1)
249
+ coderay (~> 1.1.0)
250
+ method_source (~> 0.8.1)
251
+ slop (~> 3.4)
252
+ pry-nav (0.2.4)
253
+ pry (>= 0.9.10, < 0.11.0)
254
+ pry-remote (0.1.8)
255
+ pry (~> 0.9)
256
+ slop (~> 3.0)
257
+ pundit (1.0.1)
258
+ activesupport (>= 3.0.0)
259
+ rack (1.6.4)
260
+ rack-test (0.6.3)
261
+ rack (>= 1.0)
262
+ rails (4.2.2)
263
+ actionmailer (= 4.2.2)
264
+ actionpack (= 4.2.2)
265
+ actionview (= 4.2.2)
266
+ activejob (= 4.2.2)
267
+ activemodel (= 4.2.2)
268
+ activerecord (= 4.2.2)
269
+ activesupport (= 4.2.2)
270
+ bundler (>= 1.3.0, < 2.0)
271
+ railties (= 4.2.2)
272
+ sprockets-rails
273
+ rails-deprecated_sanitizer (1.0.3)
274
+ activesupport (>= 4.2.0.alpha)
275
+ rails-dom-testing (1.0.6)
276
+ activesupport (>= 4.2.0.beta, < 5.0)
277
+ nokogiri (~> 1.6.0)
278
+ rails-deprecated_sanitizer (>= 1.0.1)
279
+ rails-html-sanitizer (1.0.2)
280
+ loofah (~> 2.0)
281
+ railties (4.2.2)
282
+ actionpack (= 4.2.2)
283
+ activesupport (= 4.2.2)
284
+ rake (>= 0.8.7)
285
+ thor (>= 0.18.1, < 2.0)
286
+ rake (10.4.2)
287
+ rb-fsevent (0.9.5)
288
+ rb-inotify (0.9.5)
289
+ ffi (>= 0.5.0)
290
+ responders (2.1.0)
291
+ railties (>= 4.2.0, < 5)
292
+ ruby-progressbar (1.7.5)
293
+ shellany (0.0.1)
294
+ slop (3.6.0)
295
+ sprockets (3.2.0)
296
+ rack (~> 1.0)
297
+ sprockets-rails (2.3.2)
298
+ actionpack (>= 3.0)
299
+ activesupport (>= 3.0)
300
+ sprockets (>= 2.8, < 4.0)
301
+ sqlite3 (1.3.10)
302
+ thor (0.19.1)
303
+ thread_safe (0.3.5)
304
+ timers (4.0.1)
305
+ hitimes
306
+ tzinfo (1.2.2)
307
+ thread_safe (~> 0.1)
308
+ xpath (2.0.0)
309
+ nokogiri (~> 1.3)
310
+
311
+ PLATFORMS
312
+ ruby
313
+
314
+ DEPENDENCIES
315
+ abstracted!
316
+ capybara
317
+ combustion (~> 0.5.3)
318
+ database_cleaner
319
+ factory_girl_rails
320
+ guard
321
+ guard-minitest
322
+ mini_backtrace
323
+ minitest-reporters
324
+ oxen_media!
325
+ pry
326
+ pry-nav
327
+ pry-remote
328
+ sqlite3
329
+
330
+ BUNDLED WITH
331
+ 1.10.5
data/Guardfile ADDED
@@ -0,0 +1,135 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+ # Defines the matching rules for Guard.
4
+ guard :minitest, spring: true, all_on_start: false do
5
+ watch(%r{^test/(.*)/?(.*)_test\.rb$})
6
+ watch('test/test_helper.rb') { 'test' }
7
+ watch('config/routes.rb') { integration_tests }
8
+ watch(%r{^app/models/(.*?)\.rb$}) do |matches|
9
+ "test/models/#{matches[1]}_test.rb"
10
+ end
11
+ watch(%r{^app/controllers/(.*?)_controller\.rb$}) do |matches|
12
+ resource_tests(matches[1])
13
+ end
14
+ watch(%r{^app/views/([^/]*?)/.*\.html\.erb$}) do |matches|
15
+ ["test/controllers/#{matches[1]}_controller_test.rb"] +
16
+ integration_tests(matches[1])
17
+ end
18
+ watch(%r{^app/helpers/(.*?)_helper\.rb$}) do |matches|
19
+ integration_tests(matches[1])
20
+ end
21
+ watch('app/views/layouts/application.html.erb') do
22
+ 'test/integration/site_layout_test.rb'
23
+ end
24
+ watch('app/helpers/sessions_helper.rb') do
25
+ integration_tests << 'test/helpers/sessions_helper_test.rb'
26
+ end
27
+ watch('app/controllers/sessions_controller.rb') do
28
+ ['test/controllers/sessions_controller_test.rb',
29
+ 'test/integration/users_login_test.rb']
30
+ end
31
+ watch('app/controllers/account_activations_controller.rb') do
32
+ 'test/integration/users_signup_test.rb'
33
+ end
34
+ watch(%r{app/views/users/*}) do
35
+ resource_tests('users') +
36
+ ['test/integration/microposts_interface_test.rb']
37
+ end
38
+ end
39
+
40
+ # Returns the integration tests corresponding to the given resource.
41
+ def integration_tests(resource = :all)
42
+ if resource == :all
43
+ Dir["test/integration/*"]
44
+ else
45
+ Dir["test/integration/#{resource}_*.rb"]
46
+ end
47
+ end
48
+
49
+ # Returns the controller tests corresponding to the given resource.
50
+ def controller_test(resource)
51
+ "test/controllers/#{resource}_controller_test.rb"
52
+ end
53
+
54
+ # Returns all tests for the given resource.
55
+ def resource_tests(resource)
56
+ integration_tests(resource) << controller_test(resource)
57
+ end
58
+
59
+
60
+
61
+
62
+ ## Uncomment and set this to only include directories you want to watch
63
+ # directories %w(app lib config test spec features)
64
+
65
+ ## Uncomment to clear the screen before every task
66
+ # clearing :on
67
+
68
+ ## Guard internally checks for changes in the Guardfile and exits.
69
+ ## If you want Guard to automatically start up again, run guard in a
70
+ ## shell loop, e.g.:
71
+ ##
72
+ ## $ while bundle exec guard; do echo "Restarting Guard..."; done
73
+ ##
74
+ ## Note: if you are using the `directories` clause above and you are not
75
+ ## watching the project directory ('.'), then you will want to move
76
+ ## the Guardfile to a watched dir and symlink it back, e.g.
77
+ #
78
+ # $ mkdir config
79
+ # $ mv Guardfile config/
80
+ # $ ln -s config/Guardfile .
81
+ #
82
+ # and, you'll have to watch "config/Guardfile" instead of "Guardfile"
83
+
84
+ # Note: The cmd option is now required due to the increasing number of ways
85
+ # rspec may be run, below are examples of the most common uses.
86
+ # * bundler: 'bundle exec rspec'
87
+ # * bundler binstubs: 'bin/rspec'
88
+ # * spring: 'bin/rspec' (This will use spring if running and you have
89
+ # installed the spring binstubs per the docs)
90
+ # * zeus: 'zeus rspec' (requires the server to be started separately)
91
+ # * 'just' rspec: 'rspec'
92
+ #
93
+ # guard :rspec, cmd: "bundle exec rspec" do
94
+ # require "guard/rspec/dsl"
95
+ # dsl = Guard::RSpec::Dsl.new(self)
96
+ #
97
+ # # Feel free to open issues for suggestions and improvements
98
+ #
99
+ # # RSpec files
100
+ # rspec = dsl.rspec
101
+ # watch(rspec.spec_helper) { rspec.spec_dir }
102
+ # watch(rspec.spec_support) { rspec.spec_dir }
103
+ # watch(rspec.spec_files)
104
+ #
105
+ # # Ruby files
106
+ # ruby = dsl.ruby
107
+ # dsl.watch_spec_files_for(ruby.lib_files)
108
+ #
109
+ # # Rails files
110
+ # rails = dsl.rails(view_extensions: %w(erb haml slim))
111
+ # dsl.watch_spec_files_for(rails.app_files)
112
+ # dsl.watch_spec_files_for(rails.views)
113
+ #
114
+ # watch(rails.controllers) do |m|
115
+ # [
116
+ # rspec.spec.("routing/#{m[1]}_routing"),
117
+ # rspec.spec.("controllers/#{m[1]}_controller"),
118
+ # rspec.spec.("acceptance/#{m[1]}")
119
+ # ]
120
+ # end
121
+ #
122
+ # # Rails config changes
123
+ # watch(rails.spec_helper) { rspec.spec_dir }
124
+ # watch(rails.routes) { "#{rspec.spec_dir}/routing" }
125
+ # watch(rails.app_controller) { "#{rspec.spec_dir}/controllers" }
126
+ #
127
+ # # Capybara features specs
128
+ # watch(rails.view_dirs) { |m| rspec.spec.("features/#{m[1]}") }
129
+ #
130
+ # # Turnip features and steps
131
+ # watch(%r{^spec/acceptance/(.+)\.feature$})
132
+ # watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) do |m|
133
+ # Dir[File.join("**/#{m[1]}.feature")][0] || "spec/acceptance"
134
+ # end
135
+ # end