padrino-gen 0.13.2 → 0.13.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1f8ab7a90610830c747530e9eac64e54a8448461
4
- data.tar.gz: f312d806fb6dc5a75457005f929afa3573e62c22
3
+ metadata.gz: 9ce9cad7af3d838b31a0f21ed5e047c2af3ce0b6
4
+ data.tar.gz: 8aea999b606391dd5ce9229b6a813d171bb6ea0f
5
5
  SHA512:
6
- metadata.gz: 04cc205b2b510cd07a67c4390864ac27a727f5dceb5657a4985bad59c91a6708f7279198ce5c2c68448d8462b22de1363da5082faa4f75e718138f159abe3d69
7
- data.tar.gz: 5658e955f42db155d572f671686d8c75e35790ff4c5ed840346125ad4d2d5b6f6f8acb4bb57f56ee01c3d784e5082706b4ff1e14330ed69c8dc7cae35191ebbd
6
+ metadata.gz: 25a987d2393a1bd5d90f69b8d10b24bce0992feb12b33b6e88873c8e4c7df9ea58b195744aade49fa780a3db1dea6a7b4e77b91d66331c2929d7fea9a4319b1b
7
+ data.tar.gz: 69ff8f7aaa59c744b89f5ef0639feb0319ad719d2572d337381fd708a467445bf1a41c07fb46dec92c25551b3e0c6c7e9fee49779aaf138cf8e58ec5e54a4a31
data/README.rdoc CHANGED
@@ -38,11 +38,11 @@ You can also instruct the generator to skip a certain component to avoid using o
38
38
 
39
39
  The available components and their default options are listed below:
40
40
 
41
- test:: none (default), bacon, shoulda, cucumber, riot, rspec, minitest, steak
41
+ test:: none (default), bacon, shoulda, cucumber, rspec, minitest
42
42
  renderer:: slim (default), erb, erubis, liquid, haml
43
43
  stylesheet:: none (default), less, compass, sass, scss
44
44
  mock:: none (default), mocha, rr
45
- script:: none (default), jquery, prototype, mootools, rightjs, extcore, dojo
45
+ script:: none (default), jquery, prototype, mootools, extcore, dojo
46
46
  orm:: none (default), datamapper, mongomapper, mongoid, activerecord, minirecord, sequel, couchrest, ohm, mongomatic, ripple, dynamoid
47
47
 
48
48
  In addition, you can generate projects based on existing templates:
data/bin/padrino-gen CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
- require 'rubygems' unless defined?(Gem) # Useful only on --dev mode
3
- require 'bundler/setup' if %w(Gemfile .components).all? { |f| File.exist?(f) }
2
+ require 'padrino-core/cli/binstub'
3
+ Padrino.replace_with_binstub('padrino-gen')
4
4
 
5
5
  padrino_gen_path = File.expand_path('../../lib', __FILE__)
6
6
  $:.unshift(padrino_gen_path) if File.directory?(padrino_gen_path) && !$:.include?(padrino_gen_path)
@@ -127,7 +127,7 @@ module Padrino
127
127
  #
128
128
  # @example
129
129
  # retrieve_component_config(...)
130
- # # => { :mock => 'rr', :test => 'riot', ... }
130
+ # # => { :mock => 'rr', :test => 'rspec', ... }
131
131
  #
132
132
  def retrieve_component_config(target)
133
133
  YAML.load_file(target)
@@ -307,7 +307,7 @@ WARNING
307
307
  # require_dependencies('json', :version => ">=1.2.3")
308
308
  #
309
309
  def require_dependencies(*gem_names)
310
- options = gem_names.extract_options!
310
+ options = gem_names.last.is_a?(Hash) ? gem_names.pop : {}
311
311
  gem_names.reverse_each { |lib| insert_into_gemfile(lib, options) }
312
312
  end
313
313
 
@@ -631,7 +631,7 @@ WARNING
631
631
  #
632
632
  # @example
633
633
  # available_choices_for :test
634
- # => [:shoulda, :bacon, :riot, :minitest]
634
+ # => [:shoulda, :bacon, :minitest]
635
635
  #
636
636
  def available_choices_for(component)
637
637
  @available_choices[component] + [:none]
@@ -29,7 +29,7 @@ module Padrino
29
29
  def setup_components
30
30
  self.destination_root = options[:root]
31
31
  if in_app_root?
32
- @_components = options.dup.slice(*self.class.component_types)
32
+ @_components = options.class.new options.select{ |key,_| self.class.component_types.include?(key.to_sym) }
33
33
  @app_name = (options[:app] || "App").gsub(/\W/, '_').camelize
34
34
  if @_components.values.delete_if(&:blank?).empty?
35
35
  self.class.start(["-h"])
@@ -3,8 +3,6 @@ def setup_mock
3
3
  case options[:test].to_s
4
4
  when 'rspec'
5
5
  inject_into_file 'spec/spec_helper.rb', "require 'rr'\n", :after => "\"/../config/boot\")\n"
6
- when 'riot'
7
- inject_into_file "test/test_config.rb","require 'riot/rr'\n", :after => "\"/../config/boot\")\n"
8
6
  when 'minitest'
9
7
  insert_mocking_include "RR::Adapters::MiniTest", :path => "test/test_config.rb"
10
8
  else
@@ -11,6 +11,7 @@ MONGO
11
11
  def setup_orm
12
12
  require_dependencies 'mongo_mapper'
13
13
  require_dependencies 'bson_ext', :require => 'mongo'
14
+ require_dependencies 'activemodel', :version => '< 5'
14
15
  create_file("config/database.rb", MONGO.gsub(/!NAME!/, @project_name.underscore))
15
16
  end
16
17
 
@@ -91,6 +91,7 @@ TEST
91
91
  def setup_test
92
92
  require_dependencies 'rack-test', :require => 'rack/test', :group => 'test'
93
93
  require_dependencies 'shoulda', :group => 'test'
94
+ require_dependencies 'test-unit', :group => 'test'
94
95
  insert_test_suite_setup SHOULDA_SETUP
95
96
  create_file destination_root("test/test.rake"), SHOULDA_RAKE
96
97
  end
@@ -82,7 +82,7 @@ module Padrino
82
82
  #
83
83
  def setup_components
84
84
  return if options[:template]
85
- @_components = options.dup.slice(*self.class.component_types)
85
+ @_components = options.class.new options.select{ |key,_| self.class.component_types.include?(key.to_sym) }
86
86
  self.class.component_types.each do |comp|
87
87
  choice = @_components[comp] = resolve_valid_choice(comp)
88
88
  execute_component_setup(comp, choice)
@@ -109,7 +109,7 @@ module Padrino
109
109
 
110
110
  proc{|*args| args.map{|str| str.gsub!(/!PATH!/, recognize_path)} }.call(controller_content, helper_content)
111
111
 
112
- directory_name = [:rspec, :steak].include?(test_component.to_sym) ? "spec" : "test"
112
+ directory_name = [:rspec].include?(test_component.to_sym) ? "spec" : "test"
113
113
  base_path = File.join(directory_name, "app")
114
114
  create_file destination_root("#{base_path}/controllers/controllers_#{directory_name}.rb"), controller_content, :skip => true
115
115
  create_file destination_root("#{base_path}/helpers/helpers_#{directory_name}.rb"), helper_content, :skip => true
@@ -136,7 +136,7 @@ module Padrino
136
136
  say "#{name} is ready for development!", :green
137
137
  say '=' * 65, :green
138
138
  say "$ cd #{options[:root]}/#{name}"
139
- say "$ bundle" unless options[:bundle]
139
+ say "$ bundle --binstubs" unless options[:bundle]
140
140
  say "=" * 65, :green
141
141
  say
142
142
  end
data/test/helper.rb CHANGED
@@ -73,10 +73,10 @@ class MiniTest::Spec
73
73
 
74
74
  # expects_generated_project :test => :shoulda, :orm => :activerecord, :dev => true
75
75
  def expects_generated_project(options={})
76
- project_root = options[:root]
77
- project_name = options[:name]
78
- settings = options.slice!(:name, :root)
79
- components = settings.sort_by { |k, v| k.to_s }.map { |component, value| "--#{component}=#{value}" }
76
+ options = options.dup
77
+ project_root = options.delete(:root)
78
+ project_name = options.delete(:name)
79
+ components = options.sort_by{ |k, v| k.to_s }.map{ |component, value| "--#{component}=#{value}" }
80
80
  params = [project_name, *components].push("-r=#{project_root}")
81
81
  Padrino.expects(:bin_gen).with(*params.unshift('project')).returns(true)
82
82
  end
@@ -126,19 +126,6 @@ describe "ControllerGenerator" do
126
126
  assert_match_in_file(/describe "SampleProject::Subby::DemoItemsHelper" do/m, @helper_test_path.gsub('app','subby'))
127
127
  end
128
128
 
129
- it 'should generate controller test for riot' do
130
- capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=riot') }
131
- capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
132
- capture_io { generate(:controller, 'DemoItems','-a=/subby', "-r=#{@apptmp}/sample_project") }
133
- capture_io { generate(:controller, 'UserItems','-a=/subby', "-r=#{@apptmp}/sample_project", "-p=user") }
134
- assert_match_in_file(/(\/\.\.){2}/m, @controller_test_path.gsub('app','subby'))
135
- assert_match_in_file(/context "\/demo_items" do/m, @controller_test_path.gsub('app','subby'))
136
- assert_match_in_file(/context "\/user\/:user_id\/user_items"/, @controller_with_parent_test_path.gsub('app','subby'))
137
- assert_match_in_file(/get "\/demo_items"/m, @controller_test_path.gsub('app','subby'))
138
- assert_match_in_file(/get "\/user\/1\/user_items"/m, @controller_with_parent_test_path.gsub('app','subby'))
139
- assert_match_in_file(/describe "SampleProject::Subby::DemoItemsHelper" do/m, @helper_test_path.gsub('app','subby'))
140
- end
141
-
142
129
  it 'should generate controller test for minitest' do
143
130
  capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=minitest') }
144
131
  capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
@@ -179,20 +166,6 @@ describe "ControllerGenerator" do
179
166
  assert_file_exists("#{@apptmp}/sample_project/test/subby/helpers/demo_items_helper_test.rb")
180
167
  end
181
168
 
182
- it 'should generate controller test for steak' do
183
- capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=steak') }
184
- capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
185
- capture_io { generate(:controller, 'DemoItems','-a=/subby', "-r=#{@apptmp}/sample_project") }
186
- capture_io { generate(:controller, 'UserItems','-a=/subby', "-r=#{@apptmp}/sample_project", "-p=user") }
187
- assert_match_in_file(/describe "\/demo_items" do/m, "#{@apptmp}/sample_project/spec/subby/controllers/demo_items_controller_spec.rb")
188
- assert_match_in_file(/feature "\/demo_items" do/m, "#{@apptmp}/sample_project/spec/subby/acceptance/controllers/demo_items_controller_spec.rb")
189
- assert_match_in_file(/describe "\/user\/:user_id\/user_items" do/m, "#{@apptmp}/sample_project/spec/subby/controllers/user_items_controller_spec.rb")
190
- assert_match_in_file(/get "\/demo_items"/m, "#{@apptmp}/sample_project/spec/subby/controllers/demo_items_controller_spec.rb")
191
- assert_match_in_file(/get "\/user\/1\/user_items"/m, "#{@apptmp}/sample_project/spec/subby/controllers/user_items_controller_spec.rb")
192
- assert_match_in_file(/feature "\/user\/:user_id\/user_items" do/m, "#{@apptmp}/sample_project/spec/subby/acceptance/controllers/user_items_controller_spec.rb")
193
- assert_match_in_file(/describe "SampleProject::Subby::DemoItemsHelper" do/m, "#{@apptmp}/sample_project/spec/subby/helpers/demo_items_helper_spec.rb")
194
- end
195
-
196
169
  it 'should generate controller test for cucumber' do
197
170
  capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=cucumber') }
198
171
  capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
@@ -62,13 +62,6 @@ describe "HelperGenerator" do
62
62
  assert_match_in_file(/describe "SampleProject::Subby::DemoItemsHelper" do/m, @helper_test_path.gsub('app','subby'))
63
63
  end
64
64
 
65
- it 'should generate helper test for riot' do
66
- capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=riot') }
67
- capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
68
- capture_io { generate(:helper, 'DemoItems','-a=/subby', "-r=#{@apptmp}/sample_project") }
69
- assert_match_in_file(/describe "SampleProject::Subby::DemoItemsHelper" do/m, @helper_test_path.gsub('app','subby'))
70
- end
71
-
72
65
  it 'should generate helper test for minitest' do
73
66
  capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=minitest') }
74
67
  capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
@@ -93,13 +86,6 @@ describe "HelperGenerator" do
93
86
  assert_file_exists("#{@apptmp}/sample_project/test/subby/helpers/demo_items_helper_test.rb")
94
87
  end
95
88
 
96
- it 'should generate helper test for steak' do
97
- capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=steak') }
98
- capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
99
- capture_io { generate(:helper, 'DemoItems','-a=/subby', "-r=#{@apptmp}/sample_project") }
100
- assert_match_in_file(/describe "SampleProject::Subby::DemoItemsHelper" do/m, "#{@apptmp}/sample_project/spec/subby/helpers/demo_items_helper_spec.rb")
101
- end
102
-
103
89
  it "should generate helper test for testunit" do
104
90
  capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--test=testunit', '--script=none') }
105
91
  capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
@@ -435,27 +435,6 @@ describe "ModelGenerator" do
435
435
  assert_match_in_file(/'(\/\.\.){2}\/test/m, "#{@apptmp}/sample_project/test/subby/models/some_user_test.rb")
436
436
  end
437
437
 
438
- # RIOT
439
- it 'should generate test file for riot' do
440
- capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=riot', '-d=activerecord') }
441
- capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
442
- capture_io { generate(:model, 'SomeUser', "-r=#{@apptmp}/sample_project") }
443
- assert_match_in_file(/context "SomeUser Model" do/m, "#{@apptmp}/sample_project/test/models/some_user_test.rb")
444
- assert_match_in_file(/SomeUser.new/m, "#{@apptmp}/sample_project/test/models/some_user_test.rb")
445
- assert_match_in_file(/asserts\("that record is not nil"\) \{ \!topic.nil\? \}/m, "#{@apptmp}/sample_project/test/models/some_user_test.rb")
446
- assert_match_in_file(/'(\/\.\.){1}\/test/m, "#{@apptmp}/sample_project/test/models/some_user_test.rb")
447
- end
448
-
449
- it 'should generate test file for riot in specified app' do
450
- capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=riot', '-d=activerecord') }
451
- capture_io { generate(:app, 'subby', "-r=#{@apptmp}/sample_project") }
452
- capture_io { generate(:model, 'SomeUser', "-a=/subby", "-r=#{@apptmp}/sample_project") }
453
- assert_match_in_file(/context "SomeUser Model" do/m, "#{@apptmp}/sample_project/test/subby/models/some_user_test.rb")
454
- assert_match_in_file(/SomeUser.new/m, "#{@apptmp}/sample_project/test/subby/models/some_user_test.rb")
455
- assert_match_in_file(/asserts\("that record is not nil"\) \{ \!topic.nil\? \}/m, "#{@apptmp}/sample_project/test/subby/models/some_user_test.rb")
456
- assert_match_in_file(/'(\/\.\.){2}\/test/m, "#{@apptmp}/sample_project/test/subby/models/some_user_test.rb")
457
- end
458
-
459
438
  # MINITEST
460
439
  it 'should generate test file for minitest' do
461
440
  capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=none', '-t=minitest', '-d=activerecord') }
@@ -176,11 +176,11 @@ describe "ProjectGenerator" do
176
176
  end
177
177
 
178
178
  it 'should create components file containing options chosen' do
179
- component_options = ['--orm=datamapper', '--test=riot', '--mock=mocha', '--script=prototype', '--renderer=erb', '--stylesheet=less']
179
+ component_options = ['--orm=datamapper', '--test=rspec', '--mock=mocha', '--script=prototype', '--renderer=erb', '--stylesheet=less']
180
180
  capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", *component_options) }
181
181
  components_chosen = YAML.load_file("#{@apptmp}/sample_project/.components")
182
182
  assert_equal 'datamapper', components_chosen[:orm]
183
- assert_equal 'riot', components_chosen[:test]
183
+ assert_equal 'rspec', components_chosen[:test]
184
184
  assert_equal 'mocha', components_chosen[:mock]
185
185
  assert_equal 'prototype', components_chosen[:script]
186
186
  assert_equal 'erb', components_chosen[:renderer]
@@ -188,10 +188,10 @@ describe "ProjectGenerator" do
188
188
  end
189
189
 
190
190
  it 'should output to log components being applied' do
191
- component_options = ['--orm=datamapper', '--test=riot', '--mock=mocha', '--script=prototype', '--renderer=erb','--stylesheet=less']
191
+ component_options = ['--orm=datamapper', '--test=rspec', '--mock=mocha', '--script=prototype', '--renderer=erb','--stylesheet=less']
192
192
  out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", *component_options) }
193
193
  assert_match(/applying.*?datamapper.*?orm/, out)
194
- assert_match(/applying.*?riot.*?test/, out)
194
+ assert_match(/applying.*?rspec.*?test/, out)
195
195
  assert_match(/applying.*?mocha.*?mock/, out)
196
196
  assert_match(/applying.*?prototype.*?script/, out)
197
197
  assert_match(/applying.*?erb.*?renderer/, out)
@@ -217,13 +217,6 @@ describe "ProjectGenerator" do
217
217
  end
218
218
 
219
219
  describe "a generator for mock component" do
220
- it 'should properly generate for rr and riot' do
221
- out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--mock=rr', '--test=riot', '--script=none') }
222
- assert_match(/applying.*?rr.*?mock/, out)
223
- assert_match_in_file(/gem 'rr'/, "#{@apptmp}/sample_project/Gemfile")
224
- assert_match_in_file(/require 'riot\/rr'/, "#{@apptmp}/sample_project/test/test_config.rb")
225
- end
226
-
227
220
  it 'should properly generate for rr and minitest' do
228
221
  out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--mock=rr', '--test=minitest', '--script=none') }
229
222
  assert_match(/applying.*?rr.*?mock/, out)
@@ -251,13 +244,6 @@ describe "ProjectGenerator" do
251
244
  assert_match_in_file(/gem 'mocha'/, "#{@apptmp}/sample_project/Gemfile")
252
245
  assert_match_in_file(/conf.mock_with :mocha/m, "#{@apptmp}/sample_project/spec/spec_helper.rb")
253
246
  end
254
-
255
- it 'should properly generate for mocha and riot' do
256
- out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--test=riot', '--mock=mocha', '--script=none') }
257
- assert_match(/applying.*?mocha.*?mock/, out)
258
- assert_match_in_file(/gem 'mocha'.*require => false/, "#{@apptmp}/sample_project/Gemfile")
259
- assert_match_in_file(/require 'mocha\/api'/, "#{@apptmp}/sample_project/test/test_config.rb")
260
- end
261
247
  end
262
248
 
263
249
  describe "the generator for orm components" do
@@ -506,14 +492,6 @@ describe "ProjectGenerator" do
506
492
  assert_file_exists("#{@apptmp}/sample_project/public/javascripts/application.js")
507
493
  end
508
494
 
509
- it 'should properly generate for rightjs' do
510
- out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=rightjs') }
511
- assert_match(/applying.*?rightjs.*?script/, out)
512
- assert_file_exists("#{@apptmp}/sample_project/public/javascripts/right.js")
513
- assert_file_exists("#{@apptmp}/sample_project/public/javascripts/right-ujs.js")
514
- assert_file_exists("#{@apptmp}/sample_project/public/javascripts/application.js")
515
- end
516
-
517
495
  it 'should properly generate for ext-core' do
518
496
  out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--script=extcore') }
519
497
  assert_match(/applying.*?extcore.*?script/, out)
@@ -546,23 +524,6 @@ describe "ProjectGenerator" do
546
524
  assert_match_in_file(/task 'test' => test_tasks/,"#{@apptmp}/sample_project/test/test.rake")
547
525
  end
548
526
 
549
- it 'should properly generate for riot' do
550
- out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--test=riot', '--script=none') }
551
- assert_match(/applying.*?riot.*?test/, out)
552
- assert_match_in_file(/gem 'rack-test'/, "#{@apptmp}/sample_project/Gemfile")
553
- assert_match_in_file(/:require => 'rack\/test'/, "#{@apptmp}/sample_project/Gemfile")
554
- assert_match_in_file(/:group => 'test'/, "#{@apptmp}/sample_project/Gemfile")
555
- assert_match_in_file(/gem 'riot'/, "#{@apptmp}/sample_project/Gemfile")
556
- assert_match_in_file(/include Rack::Test::Methods/, "#{@apptmp}/sample_project/test/test_config.rb")
557
- assert_match_in_file(/RACK_ENV = 'test' unless defined\?\(RACK_ENV\)/, "#{@apptmp}/sample_project/test/test_config.rb")
558
- assert_match_in_file(/Riot::Situation/, "#{@apptmp}/sample_project/test/test_config.rb")
559
- assert_match_in_file(/Riot::Context/, "#{@apptmp}/sample_project/test/test_config.rb")
560
- assert_match_in_file(/SampleProject::App\.tap/, "#{@apptmp}/sample_project/test/test_config.rb")
561
- assert_file_exists("#{@apptmp}/sample_project/test/test.rake")
562
- assert_match_in_file(/Rake::TestTask\.new\("test:\#/,"#{@apptmp}/sample_project/test/test.rake")
563
- assert_match_in_file(/task 'test' => test_tasks/,"#{@apptmp}/sample_project/test/test.rake")
564
- end
565
-
566
527
  it 'should properly generate for rspec' do
567
528
  out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--test=rspec', '--script=none') }
568
529
  assert_match(/applying.*?rspec.*?test/, out)
@@ -591,20 +552,6 @@ describe "ProjectGenerator" do
591
552
  assert_match_in_file(/task 'test' => test_tasks/,"#{@apptmp}/sample_project/test/test.rake")
592
553
  end
593
554
 
594
- it 'should properly generate for steak' do
595
- out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--test=steak', '--script=none') }
596
- assert_match(/applying.*?steak.*?test/, out)
597
- assert_match_in_file(/gem 'rack-test'/, "#{@apptmp}/sample_project/Gemfile")
598
- assert_match_in_file(/:require => 'rack\/test'/, "#{@apptmp}/sample_project/Gemfile")
599
- assert_match_in_file(/:group => 'test'/, "#{@apptmp}/sample_project/Gemfile")
600
- assert_match_in_file(/gem 'steak'/, "#{@apptmp}/sample_project/Gemfile")
601
- assert_match_in_file(/RACK_ENV = 'test' unless defined\?\(RACK_ENV\)/, "#{@apptmp}/sample_project/spec/spec_helper.rb")
602
- assert_match_in_file(/RSpec.configure/, "#{@apptmp}/sample_project/spec/spec_helper.rb")
603
- assert_file_exists("#{@apptmp}/sample_project/spec/spec.rake")
604
- assert_match_in_file(/RSpec::Core::RakeTask\.new\("spec:\#/,"#{@apptmp}/sample_project/spec/spec.rake")
605
- assert_match_in_file(/task 'spec' => spec_tasks/,"#{@apptmp}/sample_project/spec/spec.rake")
606
- end
607
-
608
555
  it 'should properly generate for minitest' do
609
556
  out, err = capture_io { generate(:project, 'sample_project', "--root=#{@apptmp}", '--test=minitest', '--script=none') }
610
557
  assert_match(/applying.*?minitest.*?test/, out)
@@ -694,16 +641,6 @@ describe "ProjectGenerator" do
694
641
  assert_match_in_file(/RSpec.describe "SampleProject::App::Helper" do/, "#{@apptmp}/sample_project/spec/app/helpers/helpers_spec.rb")
695
642
  end
696
643
 
697
- it "should properly generate for steak" do
698
- capture_io { generate(:project,'sample_project', '--tiny', "--root=#{@apptmp}", "--test=steak") }
699
- assert_dir_exists("#{@apptmp}/sample_project/spec/")
700
- assert_file_exists("#{@apptmp}/sample_project/spec/app/controllers/controllers_spec.rb")
701
- assert_file_exists("#{@apptmp}/sample_project/spec/app/helpers/helpers_spec.rb")
702
- assert_match_in_file(/Dir\[File\.expand_path\(File\.dirname\(__FILE__\) \+ "\/\.\.\/app\/helpers\.rb"\)\]\.each\(&method\(:require\)\)/, "#{@apptmp}/sample_project/spec/spec_helper.rb")
703
- assert_match_in_file(/describe "Controller" do/, "#{@apptmp}/sample_project/spec/app/controllers/controllers_spec.rb")
704
- assert_match_in_file(/describe "SampleProject::App::Helper" do/, "#{@apptmp}/sample_project/spec/app/helpers/helpers_spec.rb")
705
- end
706
-
707
644
  it "should properly generate for cucumber" do
708
645
  capture_io { generate(:project,'sample_project', '--tiny', "--root=#{@apptmp}", "--test=cucumber") }
709
646
  assert_dir_exists("#{@apptmp}/sample_project/spec/")
@@ -734,16 +671,6 @@ describe "ProjectGenerator" do
734
671
  assert_match_in_file(/describe "SampleProject::App::Helper"/, "#{@apptmp}/sample_project/test/app/helpers/helpers_test.rb")
735
672
  end
736
673
 
737
- it "should properly generate for riot" do
738
- capture_io { generate(:project,'sample_project', '--tiny', "--root=#{@apptmp}", "--test=riot") }
739
- assert_dir_exists("#{@apptmp}/sample_project/test/")
740
- assert_file_exists("#{@apptmp}/sample_project/test/app/controllers/controllers_test.rb")
741
- assert_file_exists("#{@apptmp}/sample_project/test/app/helpers/helpers_test.rb")
742
- assert_match_in_file(/Dir\[File\.expand_path\(File\.dirname\(__FILE__\) \+ "\/\.\.\/app\/helpers\.rb"\)\]\.each\(&method\(:require\)\)/, "#{@apptmp}/sample_project/test/test_config.rb")
743
- assert_match_in_file(/context "Controller" do/, "#{@apptmp}/sample_project/test/app/controllers/controllers_test.rb")
744
- assert_match_in_file(/describe "SampleProject::App::Helper"/, "#{@apptmp}/sample_project/test/app/helpers/helpers_test.rb")
745
- end
746
-
747
674
  it "should properly generate for shoulda" do
748
675
  capture_io { generate(:project,'sample_project', '--tiny', "--root=#{@apptmp}", "--test=shoulda") }
749
676
  assert_dir_exists("#{@apptmp}/sample_project/test/")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: padrino-gen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.2
4
+ version: 0.13.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Padrino Team
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2016-05-09 00:00:00.000000000 Z
14
+ date: 2016-08-17 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: padrino-core
@@ -19,14 +19,14 @@ dependencies:
19
19
  requirements:
20
20
  - - '='
21
21
  - !ruby/object:Gem::Version
22
- version: 0.13.2
22
+ version: 0.13.3
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - '='
28
28
  - !ruby/object:Gem::Version
29
- version: 0.13.2
29
+ version: 0.13.3
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: bundler
32
32
  requirement: !ruby/object:Gem::Requirement
@@ -47,28 +47,28 @@ dependencies:
47
47
  requirements:
48
48
  - - '='
49
49
  - !ruby/object:Gem::Version
50
- version: 0.13.2
50
+ version: 0.13.3
51
51
  type: :development
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
54
54
  requirements:
55
55
  - - '='
56
56
  - !ruby/object:Gem::Version
57
- version: 0.13.2
57
+ version: 0.13.3
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: padrino-mailer
60
60
  requirement: !ruby/object:Gem::Requirement
61
61
  requirements:
62
62
  - - '='
63
63
  - !ruby/object:Gem::Version
64
- version: 0.13.2
64
+ version: 0.13.3
65
65
  type: :development
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
68
  requirements:
69
69
  - - '='
70
70
  - !ruby/object:Gem::Version
71
- version: 0.13.2
71
+ version: 0.13.3
72
72
  description: Generators for easily creating and building padrino applications from
73
73
  the console
74
74
  email: padrinorb@gmail.com
@@ -115,7 +115,6 @@ files:
115
115
  - lib/padrino-gen/generators/components/scripts/jquery.rb
116
116
  - lib/padrino-gen/generators/components/scripts/mootools.rb
117
117
  - lib/padrino-gen/generators/components/scripts/prototype.rb
118
- - lib/padrino-gen/generators/components/scripts/rightjs.rb
119
118
  - lib/padrino-gen/generators/components/stylesheets/compass.rb
120
119
  - lib/padrino-gen/generators/components/stylesheets/compass/application.scss
121
120
  - lib/padrino-gen/generators/components/stylesheets/compass/partials/_base.scss
@@ -125,10 +124,8 @@ files:
125
124
  - lib/padrino-gen/generators/components/tests/bacon.rb
126
125
  - lib/padrino-gen/generators/components/tests/cucumber.rb
127
126
  - lib/padrino-gen/generators/components/tests/minitest.rb
128
- - lib/padrino-gen/generators/components/tests/riot.rb
129
127
  - lib/padrino-gen/generators/components/tests/rspec.rb
130
128
  - lib/padrino-gen/generators/components/tests/shoulda.rb
131
- - lib/padrino-gen/generators/components/tests/steak.rb
132
129
  - lib/padrino-gen/generators/components/tests/testunit.rb
133
130
  - lib/padrino-gen/generators/controller.rb
134
131
  - lib/padrino-gen/generators/helper.rb
@@ -218,27 +215,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
218
215
  version: 1.3.6
219
216
  requirements: []
220
217
  rubyforge_project: padrino-gen
221
- rubygems_version: 2.4.8
218
+ rubygems_version: 2.6.4
222
219
  signing_key:
223
220
  specification_version: 4
224
221
  summary: Generators for easily creating and building padrino applications
225
- test_files:
226
- - test/fixtures/admin_template.rb
227
- - test/fixtures/example_template.rb
228
- - test/fixtures/git_template.rb
229
- - test/fixtures/plugin_template.rb
230
- - test/fixtures/rake_template.rb
231
- - test/helper.rb
232
- - test/test_app_generator.rb
233
- - test/test_cli.rb
234
- - test/test_component_generator.rb
235
- - test/test_controller_generator.rb
236
- - test/test_generator.rb
237
- - test/test_helper_generator.rb
238
- - test/test_mailer_generator.rb
239
- - test/test_migration_generator.rb
240
- - test/test_model_generator.rb
241
- - test/test_plugin_generator.rb
242
- - test/test_project_generator.rb
243
- - test/test_task_generator.rb
244
- has_rdoc:
222
+ test_files: []
@@ -1,10 +0,0 @@
1
- def setup_script
2
- begin
3
- get('https://raw.github.com/padrino/padrino-static/master/js/right.js', destination_root("/public/javascripts/right.js"))
4
- get('https://raw.github.com/padrino/padrino-static/master/ujs/right.js', destination_root("/public/javascripts/right-ujs.js"))
5
- rescue
6
- copy_file('templates/static/js/right.js', destination_root("/public/javascripts/right.js"))
7
- copy_file('templates/static/ujs/right.js', destination_root("/public/javascripts/right-ujs.js"))
8
- end
9
- create_file(destination_root('/public/javascripts/application.js'), "// Put your application scripts here")
10
- end
@@ -1,119 +0,0 @@
1
- RIOT_SETUP = (<<-TEST).gsub(/^ {10}/, '') unless defined?(RIOT_SETUP)
2
- RACK_ENV = 'test' unless defined?(RACK_ENV)
3
- require File.expand_path(File.dirname(__FILE__) + "/../config/boot")
4
- Dir[File.expand_path(File.dirname(__FILE__) + "/../app/helpers/**/*.rb")].each(&method(:require))
5
-
6
- # Specify your app using the #app helper inside a context.
7
- # Takes either an app class or a block argument.
8
- # app { Padrino.application }
9
- # app { CLASS_NAME.tap { |app| } }
10
-
11
- class Riot::Situation
12
- include Rack::Test::Methods
13
-
14
- # You can use this method to custom specify a Rack app
15
- # you want rack-test to invoke:
16
- #
17
- # app CLASS_NAME
18
- # app CLASS_NAME.tap { |a| }
19
- # app(CLASS_NAME) do
20
- # set :foo, :bar
21
- # end
22
- #
23
- def app(app = nil, &blk)
24
- @app ||= block_given? ? app.instance_eval(&blk) : app
25
- @app ||= Padrino.application
26
- end
27
- end
28
-
29
- class Riot::Context
30
- end
31
-
32
- TEST
33
-
34
- RIOT_CONTROLLER_TEST = (<<-TEST).gsub(/^ {10}/, '') unless defined?(RIOT_CONTROLLER_TEST)
35
- require File.expand_path(File.dirname(__FILE__) + '/../../test_config.rb')
36
-
37
- context "!PATH!" do
38
- context "description here" do
39
- setup do
40
- get "!EXPANDED_PATH!"
41
- end
42
-
43
- asserts("the response body") { last_response.body }.equals "Hello World"
44
- end
45
- end
46
- TEST
47
-
48
- RIOT_RAKE = (<<-TEST).gsub(/^ {10}/, '') unless defined?(RIOT_RAKE)
49
- require 'rake/testtask'
50
-
51
- test_tasks = Dir['test/*/'].map { |d| File.basename(d) }
52
-
53
- test_tasks.each do |folder|
54
- Rake::TestTask.new("test:\#{folder}") do |test|
55
- test.pattern = "test/\#{folder}/**/*_test.rb"
56
- test.verbose = true
57
- end
58
- end
59
-
60
- desc "Run application test suite"
61
- task 'test' => test_tasks.map { |f| "test:\#{f}" }
62
-
63
- task :default => :test
64
- TEST
65
-
66
- RIOT_MODEL_TEST = (<<-TEST).gsub(/^ {10}/, '') unless defined?(RIOT_MODEL_TEST)
67
- require File.expand_path(File.dirname(__FILE__) + '!PATH!/test_config.rb')
68
-
69
- context "!NAME! Model" do
70
- context 'can be created' do
71
- setup do
72
- !NAME!.new
73
- end
74
-
75
- asserts("that record is not nil") { !topic.nil? }
76
- end
77
- end
78
- TEST
79
-
80
- RIOT_HELPER_TEST = (<<-TEST) unless defined?(RIOT_HELPER_TEST)
81
- require File.expand_path(File.dirname(__FILE__) + '!PATH!/test_config.rb')
82
-
83
- describe "!NAME!" do
84
- setup do
85
- helpers = Class.new
86
- helpers.extend !NAME!
87
- [helpers.foo]
88
- end
89
-
90
- asserts("#foo"){ topic.first }.nil
91
- end
92
- TEST
93
-
94
- def setup_test
95
- require_dependencies 'rack-test', :require => 'rack/test', :group => 'test'
96
- require_dependencies 'riot', :group => 'test'
97
- insert_test_suite_setup RIOT_SETUP
98
- create_file destination_root("test/test.rake"), RIOT_RAKE
99
- end
100
-
101
- def generate_controller_test(name, path)
102
- riot_contents = RIOT_CONTROLLER_TEST.gsub(/!PATH!/, path).gsub(/!EXPANDED_PATH!/, path.gsub(/:\w+?_id/, "1"))
103
- controller_test_path = File.join('test',options[:app],'controllers',"#{name.to_s.underscore}_controller_test.rb")
104
- create_file destination_root(controller_test_path), riot_contents, :skip => true
105
- end
106
-
107
- def generate_model_test(name)
108
- riot_contents = RIOT_MODEL_TEST.gsub(/!NAME!/, name.to_s.underscore.camelize)
109
- riot_contents.gsub!(/!PATH!/, recognize_path)
110
- model_test_path = File.join('test',options[:app],'models',"#{name.to_s.underscore}_test.rb")
111
- create_file destination_root(model_test_path), riot_contents, :skip => true
112
- end
113
-
114
- def generate_helper_test(name, project_name, app_name)
115
- riot_contents = RIOT_HELPER_TEST.gsub(/!NAME!/, "#{project_name}::#{app_name}::#{name}")
116
- riot_contents.gsub!(/!PATH!/, recognize_path)
117
- helper_spec_path = File.join('test', options[:app], 'helpers', "#{name.underscore}_test.rb")
118
- create_file destination_root(helper_spec_path), riot_contents, :skip => true
119
- end
@@ -1,116 +0,0 @@
1
- STEAK_SETUP = (<<-TEST).gsub(/^ {12}/, '') unless defined?(STEAK_SETUP)
2
- RACK_ENV = 'test' unless defined?(RACK_ENV)
3
- require File.expand_path(File.dirname(__FILE__) + "/../config/boot")
4
- Dir[File.expand_path(File.dirname(__FILE__) + "/../app/helpers/**/*.rb")].each(&method(:require))
5
-
6
- RSpec.configure do |conf|
7
- conf.include Rack::Test::Methods
8
- conf.include Capybara
9
- end
10
-
11
- def app
12
- ##
13
- # You can handle all padrino applications using instead:
14
- # Padrino.application
15
- CLASS_NAME.tap { |app| }
16
- end
17
-
18
- Capybara.app = app
19
- TEST
20
-
21
- STEAK_CONTROLLER_TEST = (<<-TEST).gsub(/^ {12}/, '') unless defined?(STEAK_CONTROLLER_TEST)
22
- require 'spec_helper'
23
-
24
- describe "!PATH!" do
25
- before do
26
- get "!EXPANDED_PATH!"
27
- end
28
-
29
- it "returns hello world" do
30
- last_response.body.should == "Hello World"
31
- end
32
- end
33
- TEST
34
-
35
- STEAK_CONTROLLER_ACCEPTANCE_TEST = (<<-TEST).gsub(/^ {12}/, '') unless defined?(STEAK_CONTROLLER_ACCEPTANCE_TEST)
36
- require 'spec_helper'
37
-
38
- feature "!PATH!" do
39
- background do
40
- visit "!EXPANDED_PATH!"
41
- end
42
-
43
- scenario "returns hello world" do
44
- page.should.have_content == "Hello World"
45
- end
46
- end
47
- TEST
48
-
49
- STEAK_RAKE = (<<-TEST).gsub(/^ {12}/, '') unless defined?(STEAK_RAKE)
50
- require 'rspec/core/rake_task'
51
-
52
- spec_tasks = Dir['spec/*/'].map { |d| File.basename(d) }
53
-
54
- spec_tasks.each do |folder|
55
- RSpec::Core::RakeTask.new("spec:\#{folder}") do |t|
56
- t.pattern = "./spec/\#{folder}/**/*_spec.rb"
57
- t.rspec_opts = %w(-fs --color)
58
- end
59
- end
60
-
61
- desc "Run complete application spec suite"
62
- task 'spec' => spec_tasks.map { |f| "spec:\#{f}" }
63
-
64
- task :default => :spec
65
- TEST
66
-
67
- STEAK_MODEL_TEST = (<<-TEST).gsub(/^ {12}/, '') unless defined?(STEAK_MODEL_TEST)
68
- require 'spec_helper'
69
-
70
- describe !NAME! do
71
- end
72
- TEST
73
-
74
- STEAK_HELPER_TEST = <<-TEST unless defined?(STEAK_HELPER_TEST)
75
- require 'spec_helper'
76
-
77
- describe "!NAME!" do
78
- let(:helpers){ Class.new }
79
- before { helpers.extend !NAME! }
80
- subject { helpers }
81
-
82
- it "should return nil" do
83
- expect(subject.foo).to be_nil
84
- end
85
- end
86
- TEST
87
-
88
- def setup_test
89
- require_dependencies 'rack-test', :require => 'rack/test', :group => 'test'
90
- require_dependencies 'steak', :group => 'test'
91
- insert_test_suite_setup STEAK_SETUP, :path => "spec/spec_helper.rb"
92
- create_file destination_root("spec/spec.rake"), STEAK_RAKE
93
- end
94
-
95
- # Generates a controller test given the controllers name
96
- def generate_controller_test(name, path)
97
- spec_contents = STEAK_CONTROLLER_TEST.gsub(/!PATH!/, path).gsub(/!EXPANDED_PATH!/, path.gsub(/:\w+?_id/, "1"))
98
- controller_spec_path = File.join('spec',options[:app],'controllers',"#{name.to_s.underscore}_controller_spec.rb")
99
- create_file destination_root(controller_spec_path), spec_contents, :skip => true
100
-
101
- acceptance_contents = STEAK_CONTROLLER_ACCEPTANCE_TEST.gsub(/!PATH!/, path).gsub(/!EXPANDED_PATH!/, path.gsub(/:\w+?_id/, "1"))
102
- controller_acceptance_path = File.join('spec',options[:app],'acceptance','controllers',"#{name.to_s.underscore}_controller_spec.rb")
103
- create_file destination_root(controller_acceptance_path), acceptance_contents, :skip => true
104
- end
105
-
106
- def generate_model_test(name)
107
- rspec_contents = STEAK_MODEL_TEST.gsub(/!NAME!/, name.to_s.underscore.camelize).gsub(/!DNAME!/, name.to_s.underscore)
108
- model_spec_path = File.join('spec',options[:app],'models',"#{name.to_s.underscore}_spec.rb")
109
- create_file destination_root(model_spec_path), rspec_contents, :skip => true
110
- end
111
-
112
- def generate_helper_test(name, project_name, app_name)
113
- rspec_contents = STEAK_HELPER_TEST.gsub(/!NAME!/, "#{project_name}::#{app_name}::#{name}")
114
- helper_spec_path = File.join('spec', options[:app], 'helpers', "#{name.underscore}_spec.rb")
115
- create_file destination_root(helper_spec_path), rspec_contents, :skip => true
116
- end