padrino-gen 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. data/.document +5 -0
  2. data/.gitignore +21 -0
  3. data/LICENSE +20 -0
  4. data/README.rdoc +7 -0
  5. data/Rakefile +60 -0
  6. data/VERSION +1 -0
  7. data/bin/padrino-gen +5 -0
  8. data/lib/generators/actions.rb +81 -0
  9. data/lib/generators/base_app/.gitignore +7 -0
  10. data/lib/generators/base_app/Gemfile +13 -0
  11. data/lib/generators/base_app/config/dependencies.rb.tt +41 -0
  12. data/lib/generators/base_app/test/test_config.rb.tt +5 -0
  13. data/lib/generators/components/actions.rb +49 -0
  14. data/lib/generators/components/mocks/mocha_gen.rb +16 -0
  15. data/lib/generators/components/mocks/rr_gen.rb +16 -0
  16. data/lib/generators/components/orms/activerecord_gen.rb +60 -0
  17. data/lib/generators/components/orms/couchrest_gen.rb +29 -0
  18. data/lib/generators/components/orms/datamapper_gen.rb +27 -0
  19. data/lib/generators/components/orms/mongomapper_gen.rb +54 -0
  20. data/lib/generators/components/orms/sequel_gen.rb +28 -0
  21. data/lib/generators/components/renderers/erb_gen.rb +15 -0
  22. data/lib/generators/components/renderers/haml_gen.rb +16 -0
  23. data/lib/generators/components/scripts/jquery_gen.rb +15 -0
  24. data/lib/generators/components/scripts/prototype_gen.rb +16 -0
  25. data/lib/generators/components/scripts/rightjs_gen.rb +16 -0
  26. data/lib/generators/components/tests/bacon_test_gen.rb +27 -0
  27. data/lib/generators/components/tests/riot_test_gen.rb +27 -0
  28. data/lib/generators/components/tests/rspec_test_gen.rb +26 -0
  29. data/lib/generators/components/tests/shoulda_test_gen.rb +26 -0
  30. data/lib/generators/components/tests/testspec_test_gen.rb +26 -0
  31. data/lib/generators/skeleton.rb +53 -0
  32. data/lib/padrino-gen.rb +1 -0
  33. data/padrino-gen.gemspec +104 -0
  34. data/test/active_support_helpers.rb +7 -0
  35. data/test/helper.rb +73 -0
  36. data/test/test_skeleton_generator.rb +188 -0
  37. metadata +175 -0
@@ -0,0 +1,7 @@
1
+ unless Fixnum.method_defined?(:days)
2
+ require 'active_support/core_ext/object/misc'
3
+ require 'active_support/core_ext/date'
4
+ require 'active_support/core_ext/time'
5
+ require 'active_support/core_ext/numeric'
6
+ require 'active_support/duration'
7
+ end
data/test/helper.rb ADDED
@@ -0,0 +1,73 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+ require 'shoulda'
4
+ require 'mocha'
5
+ require 'rack/test'
6
+ require 'webrat'
7
+
8
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
9
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
10
+ require 'active_support_helpers'
11
+ require File.dirname(__FILE__) + '/../../padrino-helpers/lib/padrino-helpers.rb'
12
+
13
+ class Test::Unit::TestCase
14
+ include Padrino::Helpers::OutputHelpers
15
+ include Padrino::Helpers::TagHelpers
16
+ include Padrino::Helpers::AssetTagHelpers
17
+ include Rack::Test::Methods
18
+ include Webrat::Methods
19
+ include Webrat::Matchers
20
+
21
+ Webrat.configure do |config|
22
+ config.mode = :rack
23
+ end
24
+
25
+ def stop_time_for_test
26
+ time = Time.now
27
+ Time.stubs(:now).returns(time)
28
+ return time
29
+ end
30
+
31
+ # assert_has_tag(:h1, :content => "yellow") { "<h1>yellow</h1>" }
32
+ # In this case, block is the html to evaluate
33
+ def assert_has_tag(name, attributes = {}, &block)
34
+ html = block && block.call
35
+ matcher = HaveSelector.new(name, attributes)
36
+ raise "Please specify a block!" if html.blank?
37
+ assert matcher.matches?(html), matcher.failure_message
38
+ end
39
+
40
+ # assert_has_no_tag, tag(:h1, :content => "yellow") { "<h1>green</h1>" }
41
+ # In this case, block is the html to evaluate
42
+ def assert_has_no_tag(name, attributes = {}, &block)
43
+ html = block && block.call
44
+ attributes.merge!(:count => 0)
45
+ matcher = HaveSelector.new(name, attributes)
46
+ raise "Please specify a block!" if html.blank?
47
+ assert matcher.matches?(html), matcher.failure_message
48
+ end
49
+
50
+ # Silences the output by redirecting to stringIO
51
+ # silence_logger { ...commands... } => "...output..."
52
+ def silence_logger(&block)
53
+ orig_stdout = $stdout
54
+ $stdout = log_buffer = StringIO.new
55
+ block.call
56
+ $stdout = orig_stdout
57
+ log_buffer.rewind && log_buffer.read
58
+ end
59
+
60
+ # Asserts that a file matches the pattern
61
+ def assert_match_in_file(pattern, file)
62
+ assert File.exist?(file), "File '#{file}' does not exist!"
63
+ assert_match pattern, File.read(file)
64
+ end
65
+ end
66
+
67
+ module Webrat
68
+ module Logging
69
+ def logger # :nodoc:
70
+ @logger = nil
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,188 @@
1
+ require File.dirname(__FILE__) + '/helper'
2
+ require File.dirname(__FILE__) + "/../lib/padrino-gen"
3
+ require 'thor'
4
+
5
+ class TestSkeletonGenerator < Test::Unit::TestCase
6
+ def setup
7
+ `rm -rf /tmp/sample_app`
8
+ end
9
+
10
+ context 'the skeleton generator' do
11
+ should "allow simple generator to run and create base_app with no options" do
12
+ assert_nothing_raised { silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--script=none']) } }
13
+ assert File.exist?('/tmp/sample_app')
14
+ assert File.exist?('/tmp/sample_app/config/dependencies.rb')
15
+ assert File.exist?('/tmp/sample_app/test/test_config.rb')
16
+ end
17
+ should "create components file containing options chosen with defaults" do
18
+ silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp']) }
19
+ components_chosen = YAML.load_file('/tmp/sample_app/.components')
20
+ assert_equal 'datamapper', components_chosen[:orm]
21
+ assert_equal 'bacon', components_chosen[:test]
22
+ assert_equal 'mocha', components_chosen[:mock]
23
+ assert_equal 'jquery', components_chosen[:script]
24
+ assert_equal 'erb', components_chosen[:renderer]
25
+ end
26
+ should "create components file containing options chosen" do
27
+ component_options = ['--orm=datamapper', '--test=riot', '--mock=mocha', '--script=prototype', '--renderer=erb']
28
+ silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', *component_options]) }
29
+ components_chosen = YAML.load_file('/tmp/sample_app/.components')
30
+ assert_equal 'datamapper', components_chosen[:orm]
31
+ assert_equal 'riot', components_chosen[:test]
32
+ assert_equal 'mocha', components_chosen[:mock]
33
+ assert_equal 'prototype', components_chosen[:script]
34
+ assert_equal 'erb', components_chosen[:renderer]
35
+ end
36
+ should "output to log components being applied" do
37
+ component_options = ['--orm=datamapper', '--test=riot', '--mock=mocha', '--script=prototype', '--renderer=erb']
38
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', *component_options]) }
39
+ assert_match /Applying.*?datamapper.*?orm/, buffer
40
+ assert_match /Applying.*?riot.*?test/, buffer
41
+ assert_match /Applying.*?mocha.*?mock/, buffer
42
+ assert_match /Applying.*?prototype.*?script/, buffer
43
+ assert_match /Applying.*?erb.*?renderer/, buffer
44
+ end
45
+ should "output gem files for base app" do
46
+ silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--script=none']) }
47
+ assert_match_in_file(/gem 'sinatra'/, '/tmp/sample_app/Gemfile')
48
+ assert_match_in_file(/gem 'padrino'/, '/tmp/sample_app/Gemfile')
49
+ assert_match_in_file(/gem 'rack-flash'/, '/tmp/sample_app/Gemfile')
50
+ assert_match_in_file(/gem 'rack-test'/, '/tmp/sample_app/Gemfile')
51
+ end
52
+ end
53
+
54
+ context "a generator for mock component" do
55
+ should "properly generate for rr" do
56
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--mock=rr', '--script=none']) }
57
+ assert_match /Applying.*?rr.*?mock/, buffer
58
+ assert_match_in_file(/gem 'rr'/, '/tmp/sample_app/Gemfile')
59
+ assert_match_in_file(/include RR::Adapters::RRMethods/m, '/tmp/sample_app/test/test_config.rb')
60
+ end
61
+
62
+ should "properly generate default for mocha" do
63
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--mock=mocha', '--script=none']) }
64
+ assert_match /Applying.*?mocha.*?mock/, buffer
65
+ assert_match_in_file(/gem 'mocha'/, '/tmp/sample_app/Gemfile')
66
+ assert_match_in_file(/include Mocha::API/m, '/tmp/sample_app/test/test_config.rb')
67
+ end
68
+ end
69
+
70
+ context "the generator for orm components" do
71
+ should "properly generate for sequel" do
72
+ Padrino::Generators::Skeleton.instance_eval("undef setup_orm if respond_to?('setup_orm')")
73
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--orm=sequel', '--script=none']) }
74
+ assert_match /Applying.*?sequel.*?orm/, buffer
75
+ assert_match_in_file(/gem 'sequel'/, '/tmp/sample_app/Gemfile')
76
+ assert_match_in_file(/SequelInitializer/, '/tmp/sample_app/config/initializers/sequel.rb')
77
+ # assert_match_in_file(/class User < Sequel::Model/, '/tmp/sample_app/app/models/user.rb')
78
+ end
79
+
80
+ should "properly generate for activerecord" do
81
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--orm=activerecord', '--script=none']) }
82
+ assert_match /Applying.*?activerecord.*?orm/, buffer
83
+ assert_match_in_file(/gem 'activerecord'/, '/tmp/sample_app/Gemfile')
84
+ assert_match_in_file(/ActiveRecordInitializer/, '/tmp/sample_app/config/initializers/active_record.rb')
85
+ assert_match_in_file(/Migrate the database/, '/tmp/sample_app/Rakefile')
86
+ # assert_match_in_file(/CreateUsers < ActiveRecord::Migration/, '/tmp/sample_app/db/migrate/001_create_users.rb')
87
+ # assert_match_in_file(/class User < ActiveRecord::Base/, '/tmp/sample_app/app/models/user.rb')
88
+ end
89
+
90
+ should "properly generate default for datamapper" do
91
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--orm=datamapper', '--script=none']) }
92
+ assert_match /Applying.*?datamapper.*?orm/, buffer
93
+ assert_match_in_file(/gem 'dm-core'/, '/tmp/sample_app/Gemfile')
94
+ assert_match_in_file(/DataMapperInitializer/, '/tmp/sample_app/config/initializers/data_mapper.rb')
95
+ # assert_match_in_file(/class User.*?include DataMapper::Resource/m, '/tmp/sample_app/app/models/user.rb')
96
+ end
97
+
98
+ should "properly generate for mongomapper" do
99
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--orm=mongomapper', '--script=none']) }
100
+ assert_match /Applying.*?mongomapper.*?orm/, buffer
101
+ assert_match_in_file(/gem 'mongo_mapper'/, '/tmp/sample_app/Gemfile')
102
+ assert_match_in_file(/MongoDbInitializer/, '/tmp/sample_app/config/initializers/mongo_db.rb')
103
+ # assert_match_in_file(/class User.*?include MongoMapper::Document/m, '/tmp/sample_app/app/models/user.rb')
104
+ end
105
+
106
+ should "properly generate for couchrest" do
107
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--orm=couchrest', '--script=none']) }
108
+ assert_match /Applying.*?couchrest.*?orm/, buffer
109
+ assert_match_in_file(/gem 'couchrest'/, '/tmp/sample_app/Gemfile')
110
+ assert_match_in_file(/CouchRestInitializer/, '/tmp/sample_app/config/initializers/couch_rest.rb')
111
+ # assert_match_in_file(/class User < CouchRest::ExtendedDocument/m, '/tmp/sample_app/app/models/user.rb')
112
+ end
113
+ end
114
+
115
+ context "the generator for renderer component" do
116
+ should "properly generate default for erb" do
117
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--renderer=erb', '--script=none']) }
118
+ assert_match /Applying.*?erb.*?renderer/, buffer
119
+ assert_match_in_file(/gem 'erubis'/, '/tmp/sample_app/Gemfile')
120
+ end
121
+
122
+ should "properly generate for haml" do
123
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--renderer=haml','--script=none']) }
124
+ assert_match /Applying.*?haml.*?renderer/, buffer
125
+ assert_match_in_file(/gem 'haml'/, '/tmp/sample_app/Gemfile')
126
+ # assert_match_in_file(/gem 'hassle'/, '/tmp/sample_app/Gemfile')
127
+ # assert_match_in_file(/HassleInitializer/, '/tmp/sample_app/config/initializers/hassle.rb')
128
+ end
129
+ end
130
+
131
+ context "the generator for script component" do
132
+ should "properly generate for jquery" do
133
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--script=jquery']) }
134
+ assert_match /Applying.*?jquery.*?script/, buffer
135
+ assert File.exist?('/tmp/sample_app/public/javascripts/jquery.min.js')
136
+ end
137
+
138
+ should "properly generate for prototype" do
139
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--script=prototype']) }
140
+ assert_match /Applying.*?prototype.*?script/, buffer
141
+ assert File.exist?('/tmp/sample_app/public/javascripts/prototype.js')
142
+ assert File.exist?('/tmp/sample_app/public/javascripts/lowpro.js')
143
+ end
144
+
145
+ should "properly generate for rightjs" do
146
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--script=rightjs']) }
147
+ assert_match /Applying.*?rightjs.*?script/, buffer
148
+ assert File.exist?('/tmp/sample_app/public/javascripts/right-min.js')
149
+ end
150
+ end
151
+
152
+ context "the generator for test component" do
153
+ should "properly default generate for bacon" do
154
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--test=bacon', '--script=none']) }
155
+ assert_match /Applying.*?bacon.*?test/, buffer
156
+ assert_match_in_file(/gem 'bacon'/, '/tmp/sample_app/Gemfile')
157
+ assert_match_in_file(/Bacon::Context/, '/tmp/sample_app/test/test_config.rb')
158
+ end
159
+
160
+ should "properly generate for riot" do
161
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--test=riot', '--script=none']) }
162
+ assert_match /Applying.*?riot.*?test/, buffer
163
+ assert_match_in_file(/gem 'riot'/, '/tmp/sample_app/Gemfile')
164
+ assert_match_in_file(/Riot::Situation/, '/tmp/sample_app/test/test_config.rb')
165
+ end
166
+
167
+ should "properly generate for rspec" do
168
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--test=rspec', '--script=none']) }
169
+ assert_match /Applying.*?rspec.*?test/, buffer
170
+ assert_match_in_file(/gem 'spec'/, '/tmp/sample_app/Gemfile')
171
+ assert_match_in_file(/Spec::Runner/, '/tmp/sample_app/test/test_config.rb')
172
+ end
173
+
174
+ should "properly generate for shoulda" do
175
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--test=shoulda', '--script=none']) }
176
+ assert_match /Applying.*?shoulda.*?test/, buffer
177
+ assert_match_in_file(/gem 'shoulda'/, '/tmp/sample_app/Gemfile')
178
+ assert_match_in_file(/Test::Unit::TestCase/, '/tmp/sample_app/test/test_config.rb')
179
+ end
180
+
181
+ should "properly generate for testspec" do
182
+ buffer = silence_logger { Padrino::Generators::Skeleton.start(['sample_app', '/tmp', '--test=testspec', '--script=none']) }
183
+ assert_match /Applying.*?testspec.*?test/, buffer
184
+ assert_match_in_file(/gem 'test\/spec'/, '/tmp/sample_app/Gemfile')
185
+ assert_match_in_file(/Test::Unit::TestCase/, '/tmp/sample_app/test/test_config.rb')
186
+ end
187
+ end
188
+ end
metadata ADDED
@@ -0,0 +1,175 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: padrino-gen
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Padrino Team
8
+ - Nathan Esquenazi
9
+ - Davide D'Agostino
10
+ - Arthur Chiu
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+
15
+ date: 2009-11-16 00:00:00 -08:00
16
+ default_executable: padrino-gen
17
+ dependencies:
18
+ - !ruby/object:Gem::Dependency
19
+ name: sinatra
20
+ type: :runtime
21
+ version_requirement:
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.9.2
27
+ version:
28
+ - !ruby/object:Gem::Dependency
29
+ name: thor
30
+ type: :runtime
31
+ version_requirement:
32
+ version_requirements: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 0.11.8
37
+ version:
38
+ - !ruby/object:Gem::Dependency
39
+ name: bundler
40
+ type: :runtime
41
+ version_requirement:
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: "0"
47
+ version:
48
+ - !ruby/object:Gem::Dependency
49
+ name: haml
50
+ type: :development
51
+ version_requirement:
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 2.2.1
57
+ version:
58
+ - !ruby/object:Gem::Dependency
59
+ name: shoulda
60
+ type: :development
61
+ version_requirement:
62
+ version_requirements: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: "0"
67
+ version:
68
+ - !ruby/object:Gem::Dependency
69
+ name: mocha
70
+ type: :development
71
+ version_requirement:
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: 0.9.7
77
+ version:
78
+ - !ruby/object:Gem::Dependency
79
+ name: rack-test
80
+ type: :development
81
+ version_requirement:
82
+ version_requirements: !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: 0.5.0
87
+ version:
88
+ - !ruby/object:Gem::Dependency
89
+ name: webrat
90
+ type: :development
91
+ version_requirement:
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: 0.5.1
97
+ version:
98
+ description: Generators for easily creating and building padrino applications from the console
99
+ email: nesquena@gmail.com
100
+ executables:
101
+ - padrino-gen
102
+ extensions: []
103
+
104
+ extra_rdoc_files:
105
+ - LICENSE
106
+ - README.rdoc
107
+ files:
108
+ - .document
109
+ - .gitignore
110
+ - LICENSE
111
+ - README.rdoc
112
+ - Rakefile
113
+ - VERSION
114
+ - bin/padrino-gen
115
+ - lib/generators/actions.rb
116
+ - lib/generators/base_app/.gitignore
117
+ - lib/generators/base_app/Gemfile
118
+ - lib/generators/base_app/config/dependencies.rb.tt
119
+ - lib/generators/base_app/test/test_config.rb.tt
120
+ - lib/generators/components/actions.rb
121
+ - lib/generators/components/mocks/mocha_gen.rb
122
+ - lib/generators/components/mocks/rr_gen.rb
123
+ - lib/generators/components/orms/activerecord_gen.rb
124
+ - lib/generators/components/orms/couchrest_gen.rb
125
+ - lib/generators/components/orms/datamapper_gen.rb
126
+ - lib/generators/components/orms/mongomapper_gen.rb
127
+ - lib/generators/components/orms/sequel_gen.rb
128
+ - lib/generators/components/renderers/erb_gen.rb
129
+ - lib/generators/components/renderers/haml_gen.rb
130
+ - lib/generators/components/scripts/jquery_gen.rb
131
+ - lib/generators/components/scripts/prototype_gen.rb
132
+ - lib/generators/components/scripts/rightjs_gen.rb
133
+ - lib/generators/components/tests/bacon_test_gen.rb
134
+ - lib/generators/components/tests/riot_test_gen.rb
135
+ - lib/generators/components/tests/rspec_test_gen.rb
136
+ - lib/generators/components/tests/shoulda_test_gen.rb
137
+ - lib/generators/components/tests/testspec_test_gen.rb
138
+ - lib/generators/skeleton.rb
139
+ - lib/padrino-gen.rb
140
+ - padrino-gen.gemspec
141
+ - test/active_support_helpers.rb
142
+ - test/helper.rb
143
+ - test/test_skeleton_generator.rb
144
+ has_rdoc: true
145
+ homepage: http://github.com/padrino/padrino-gen
146
+ licenses: []
147
+
148
+ post_install_message:
149
+ rdoc_options:
150
+ - --charset=UTF-8
151
+ require_paths:
152
+ - lib
153
+ required_ruby_version: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ version: "0"
158
+ version:
159
+ required_rubygems_version: !ruby/object:Gem::Requirement
160
+ requirements:
161
+ - - ">="
162
+ - !ruby/object:Gem::Version
163
+ version: "0"
164
+ version:
165
+ requirements: []
166
+
167
+ rubyforge_project:
168
+ rubygems_version: 1.3.5
169
+ signing_key:
170
+ specification_version: 3
171
+ summary: Generators for easily creating and building padrino applications
172
+ test_files:
173
+ - test/active_support_helpers.rb
174
+ - test/helper.rb
175
+ - test/test_skeleton_generator.rb