rails_templater 0.2.1 → 0.3.0
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.
- data/CHANGELOG +17 -4
- data/README.textile +1 -0
- data/lib/rails_templater.rb +0 -1
- data/lib/rails_templater/cli.rb +1 -2
- data/lib/rails_templater/fixture_replacement.rb +6 -7
- data/lib/rails_templater/javascript_framework.rb +5 -6
- data/lib/rails_templater/orm.rb +5 -6
- data/lib/rails_templater/template_engine.rb +1 -2
- data/lib/rails_templater/templater.rb +0 -1
- data/lib/rails_templater/testing_framework.rb +3 -5
- data/lib/rails_templater/version.rb +1 -1
- data/lib/template_framework/core_ext.rb +1 -3
- data/lib/template_framework/recipes/compass.rb +45 -0
- data/lib/template_framework/recipes/cover_me.rb +1 -1
- data/lib/template_framework/recipes/cucumber.rb +7 -21
- data/lib/template_framework/recipes/erb.rb +2 -0
- data/lib/template_framework/recipes/fabrication.rb +7 -0
- data/lib/template_framework/recipes/factory_girl.rb +5 -10
- data/lib/template_framework/recipes/fixture_replacement.rb +18 -0
- data/lib/template_framework/recipes/haml.rb +0 -1
- data/lib/template_framework/recipes/javascript_framework.rb +11 -4
- data/lib/template_framework/recipes/mongoid.rb +3 -2
- data/lib/template_framework/recipes/orm.rb +1 -1
- data/lib/template_framework/recipes/pry.rb +4 -0
- data/lib/template_framework/recipes/rspec.rb +6 -5
- data/lib/template_framework/recipes/shoulda_matchers.rb +1 -0
- data/lib/template_framework/recipes/slim.rb +1 -1
- data/lib/template_framework/recipes/template_engine.rb +2 -3
- data/lib/template_framework/recipes/test_unit.rb +1 -0
- data/lib/template_framework/recipes/testing_framework.rb +1 -1
- data/lib/template_framework/snippets/cucumber/factory_girl +1 -1
- data/lib/template_framework/snippets/fabrication/generator_rspec +4 -0
- data/lib/template_framework/snippets/fabrication/generator_test_unit +5 -0
- data/lib/template_framework/snippets/factory_girl/{generator → generator_rspec} +0 -0
- data/lib/template_framework/snippets/factory_girl/generator_test_unit +5 -0
- data/lib/template_framework/template_runner.rb +1 -1
- data/lib/template_framework/templates/erb/app/views/layouts/application.html.erb +15 -0
- data/lib/template_framework/templates/git/gitignore +1 -3
- data/lib/template_framework/templates/haml/app/views/layouts/application.html.haml +1 -1
- data/lib/template_framework/templates/jquery/app/assets/javascripts/application.js +14 -0
- data/lib/template_framework/templates/mongoid/lib/tasks/assets.rake +14 -0
- data/lib/template_framework/templates/prototype/app/assets/javascripts/application.js +15 -0
- data/lib/template_framework/templates/slim/app/views/layouts/application.html.slim +1 -1
- data/rails_templater.gemspec +3 -4
- metadata +58 -78
- data/lib/template_framework/generators/factory_girl.rb +0 -11
- data/lib/template_framework/generators/factory_girl/model/model_generator.rb +0 -14
- data/lib/template_framework/generators/factory_girl/model/templates/fixtures.rb +0 -9
- data/lib/template_framework/recipes/jquery.rb +0 -10
- data/lib/template_framework/recipes/remarkable.rb +0 -12
- data/lib/template_framework/recipes/sass.rb +0 -54
- data/lib/template_framework/templates/mongoid/features/support/hooks.rb +0 -3
data/CHANGELOG
CHANGED
@@ -1,3 +1,16 @@
|
|
1
|
+
In Development
|
2
|
+
|
3
|
+
0.3.0 (March 14, 2012)
|
4
|
+
* Updated to work with Rails Asset Pipeline
|
5
|
+
* Removed Sass recipe as it is now the default in Rails
|
6
|
+
* Added Pry recipe for IRB Replacement
|
7
|
+
* Added Fabrication as recommended option for Fixture Replacement
|
8
|
+
* Removed Remarkable, replaced with mongo
|
9
|
+
* When Erb is selected as the template framework, layout.html.erb matches Haml & Slim recipes
|
10
|
+
* Removed custom FactoryGirl generators, using factory_girl_rails
|
11
|
+
* Adding mongoid-rspec for matchers option when Mongoid & RSpec are selected
|
12
|
+
* Adding should-matchers for ActiveRecord matchers for RSpec & TestUnit
|
13
|
+
|
1
14
|
0.2.1 (February 9, 2011)
|
2
15
|
* Fixed path-generation not being pluralized in Rails 3.0.4 [tariksin]
|
3
16
|
|
@@ -7,7 +20,7 @@
|
|
7
20
|
* Added CoverMe code coverage recipe for Ruby 1.9 (via guilleiguaran)
|
8
21
|
* Added RCov code coverage recipe for Ruby 1.8 (via guilleiguaran)
|
9
22
|
* Mongoid recipe is now using 2.0.0.rc.7
|
10
|
-
|
23
|
+
|
11
24
|
0.1.2 (February 1, 2011)
|
12
25
|
|
13
26
|
* Added the Slim template engine (via fredwu)
|
@@ -21,11 +34,11 @@
|
|
21
34
|
* Add Prototype as a JavaScript Framework option
|
22
35
|
* Remarkable RSpec matchers are optional and are dependent on the RSpec recipe
|
23
36
|
* Haml is an optional choice for your View Templates
|
24
|
-
* Sass is an optional choice for composing Stylesheets
|
37
|
+
* Sass is an optional choice for composing Stylesheets
|
25
38
|
* Compass is now dependent on the Sass recipe
|
26
|
-
* Compass has three options: core, blueprint semantic, and blueprint basic
|
39
|
+
* Compass has three options: core, blueprint semantic, and blueprint basic
|
27
40
|
* Cucumber is an optional choice for Integration Testing
|
28
|
-
|
41
|
+
|
29
42
|
0.0.2 (January 23, 2011)
|
30
43
|
|
31
44
|
* Add a custom generator for FactoryGirl which uses the new 2.0.0 syntax
|
data/README.textile
CHANGED
data/lib/rails_templater.rb
CHANGED
data/lib/rails_templater/cli.rb
CHANGED
@@ -6,8 +6,7 @@ module RailsTemplater
|
|
6
6
|
desc "Generates a new Rails application with templater'"
|
7
7
|
|
8
8
|
def run_templater
|
9
|
-
system("rails new #{application_name} -
|
9
|
+
system("rails new #{application_name} -JO --skip-bundle -m #{RailsTemplater::template_runner}")
|
10
10
|
end
|
11
|
-
|
12
11
|
end
|
13
12
|
end
|
@@ -1,23 +1,22 @@
|
|
1
1
|
module RailsTemplater
|
2
2
|
class FixtureReplacement
|
3
|
-
|
3
|
+
|
4
4
|
DEFAULT = :factory_girl
|
5
|
-
SUPPORTED_TYPES = [:factory_girl]
|
6
|
-
|
5
|
+
SUPPORTED_TYPES = [:factory_girl, :fabrication]
|
6
|
+
|
7
7
|
def type
|
8
|
-
@type || DEFAULT
|
8
|
+
@type || DEFAULT
|
9
9
|
end
|
10
|
-
|
10
|
+
|
11
11
|
def type=(value)
|
12
12
|
raise NotSupportedError unless SUPPORTED_TYPES.include?(value)
|
13
13
|
@type = value
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
16
|
SUPPORTED_TYPES.each do |type|
|
17
17
|
define_method "#{type}?" do
|
18
18
|
self.type == type
|
19
19
|
end
|
20
20
|
end
|
21
|
-
|
22
21
|
end
|
23
22
|
end
|
@@ -1,23 +1,22 @@
|
|
1
1
|
module RailsTemplater
|
2
2
|
class JavaScriptFramework
|
3
|
-
|
3
|
+
|
4
4
|
DEFAULT = :jquery
|
5
5
|
SUPPORTED_TYPES = [:jquery, :prototype]
|
6
|
-
|
6
|
+
|
7
7
|
def type
|
8
|
-
@type || DEFAULT
|
8
|
+
@type || DEFAULT
|
9
9
|
end
|
10
|
-
|
10
|
+
|
11
11
|
def type=(value)
|
12
12
|
raise NotSupportedError unless SUPPORTED_TYPES.include?(value)
|
13
13
|
@type = value
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
16
|
SUPPORTED_TYPES.each do |type|
|
17
17
|
define_method "#{type}?" do
|
18
18
|
self.type == type
|
19
19
|
end
|
20
20
|
end
|
21
|
-
|
22
21
|
end
|
23
22
|
end
|
data/lib/rails_templater/orm.rb
CHANGED
@@ -1,23 +1,22 @@
|
|
1
1
|
module RailsTemplater
|
2
2
|
class Orm
|
3
|
-
|
3
|
+
|
4
4
|
DEFAULT = :mongoid
|
5
5
|
SUPPORTED_TYPES = [:active_record, :mongoid]
|
6
6
|
|
7
7
|
def type
|
8
8
|
@type || DEFAULT
|
9
9
|
end
|
10
|
-
|
10
|
+
|
11
11
|
def type=(value)
|
12
12
|
raise NotSupportedError unless SUPPORTED_TYPES.include?(value)
|
13
13
|
@type = value
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
16
|
SUPPORTED_TYPES.each do |type|
|
17
17
|
define_method "#{type}?" do
|
18
18
|
self.type == type
|
19
19
|
end
|
20
|
-
end
|
21
|
-
|
20
|
+
end
|
22
21
|
end
|
23
|
-
end
|
22
|
+
end
|
@@ -1,23 +1,21 @@
|
|
1
1
|
module RailsTemplater
|
2
2
|
class TestingFramework
|
3
|
-
|
4
3
|
DEFAULT = :rspec
|
5
4
|
SUPPORTED_TYPES = [:rspec, :test_unit]
|
6
|
-
|
5
|
+
|
7
6
|
def type
|
8
7
|
@type || DEFAULT
|
9
8
|
end
|
10
|
-
|
9
|
+
|
11
10
|
def type=(value)
|
12
11
|
raise NotSupportedError unless SUPPORTED_TYPES.include?(value)
|
13
12
|
@type ||= value
|
14
13
|
end
|
15
|
-
|
14
|
+
|
16
15
|
SUPPORTED_TYPES.each do |type|
|
17
16
|
define_method "#{type}?" do
|
18
17
|
self.type == type
|
19
18
|
end
|
20
19
|
end
|
21
|
-
|
22
20
|
end
|
23
21
|
end
|
@@ -1,15 +1,13 @@
|
|
1
1
|
module Rails
|
2
2
|
module Generators
|
3
3
|
module Actions
|
4
|
-
|
5
4
|
def templater
|
6
5
|
@templater ||= RailsTemplater::Templater.new
|
7
6
|
end
|
8
|
-
|
7
|
+
|
9
8
|
def execute_post_bundler_strategies
|
10
9
|
templater.post_bundler_strategies.each {|strategy| strategy.call }
|
11
10
|
end
|
12
|
-
|
13
11
|
end
|
14
12
|
end
|
15
13
|
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
if yes?("\n[Stylesheets] Would you like to use Compass? [y|n]: ", Thor::Shell::Color::BLUE)
|
2
|
+
design_options = {
|
3
|
+
'Option' => 'Design Framework',
|
4
|
+
'1' => 'Compass',
|
5
|
+
'2' => 'Compass with blueprint semantic',
|
6
|
+
'3' => 'Compass with blueprint basic',
|
7
|
+
'4' => 'Compass with 960.gs'
|
8
|
+
}
|
9
|
+
|
10
|
+
print_table design_options.to_a, :ident => 4
|
11
|
+
design_selection = ask("\nOption: ", Thor::Shell::Color::BLUE)
|
12
|
+
|
13
|
+
design_framework = case design_selection
|
14
|
+
when "1"
|
15
|
+
:compass
|
16
|
+
when "2"
|
17
|
+
:compass_blueprint_semantic
|
18
|
+
when "3"
|
19
|
+
:compass_blueprint
|
20
|
+
when "4"
|
21
|
+
:compass_960
|
22
|
+
else
|
23
|
+
:none
|
24
|
+
end
|
25
|
+
|
26
|
+
unless design_framework == :none
|
27
|
+
remove_file 'app/assets/stylesheets/application.css'
|
28
|
+
|
29
|
+
gem 'compass-rails', group: :assets
|
30
|
+
|
31
|
+
framework_option = case design_framework
|
32
|
+
when :compass_blueprint
|
33
|
+
"--using blueprint/basic"
|
34
|
+
when :compass_blueprint_semantic
|
35
|
+
"--using blueprint/semantic"
|
36
|
+
when :compass_960
|
37
|
+
gem 'compass-960-plugin'
|
38
|
+
"-r ninesixty --using 960"
|
39
|
+
end
|
40
|
+
|
41
|
+
templater.post_bundler do
|
42
|
+
run "bundle exec compass init rails . #{framework_option}"
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -1,37 +1,23 @@
|
|
1
1
|
if yes?("\n[Integration Testing] Would you like to add integration testing with Cucumber? [y|n]: ", Thor::Shell::Color::BLUE)
|
2
2
|
|
3
|
-
gem '
|
4
|
-
gem '
|
5
|
-
gem 'launchy', :group => :test
|
3
|
+
gem 'cucumber-rails', '~> 1.3', :group => :test
|
4
|
+
gem 'database_cleaner', :group => :test
|
6
5
|
|
7
|
-
cucumber_generate_command = "cucumber:install
|
6
|
+
cucumber_generate_command = "cucumber:install"
|
8
7
|
cucumber_generate_command << ' --skip-database' if templater.orm.mongoid?
|
9
|
-
cucumber_generate_command << ' --rspec' if templater.testing_framework.rspec?
|
10
|
-
cucumber_generate_command << ' --testunit' if templater.testing_framework.test_unit?
|
11
8
|
|
12
9
|
templater.post_bundler do
|
13
10
|
generate cucumber_generate_command
|
14
11
|
|
15
|
-
|
16
|
-
"require 'cucumber/rails/capybara_javascript_emulation' # Lets you click links with onclick javascript handlers without using @culerity or @javascript", ''
|
17
|
-
|
18
|
-
inject_into_file "features/support/env.rb",
|
19
|
-
"\nCapybara.save_and_open_page_path = 'tmp/capybara/'",
|
20
|
-
:after => 'Capybara.default_selector = :css'
|
21
|
-
|
22
|
-
if templater.testing_framework.rspec? && templater.fixture_replacement.factory_girl?
|
12
|
+
if templater.fixture_replacement.factory_girl?
|
23
13
|
inject_into_file "features/support/env.rb", templater.load_snippet("factory_girl", 'cucumber'), :after => 'ActionController::Base.allow_rescue = false'
|
14
|
+
elsif templater.fixture_replacement.fabrication?
|
15
|
+
generate 'fabrication:cucumber_steps'
|
24
16
|
end
|
25
17
|
|
26
18
|
# Mongoid truncation strategy
|
27
19
|
if templater.orm.mongoid?
|
28
|
-
|
29
|
-
|
30
|
-
# Compliment to factory_girl step definitions
|
31
|
-
if templater.fixture_replacement.factory_girl?
|
32
|
-
create_file 'features/step_definitions/mongoid_steps.rb', templater.load_template('features/step_definitions/mongoid_steps.rb', 'mongoid')
|
33
|
-
end
|
20
|
+
gsub_file 'features/support/env.rb', 'DatabaseCleaner.strategy = :transaction', 'DatabaseCleaner.strategy = :truncation'
|
34
21
|
end
|
35
|
-
|
36
22
|
end
|
37
23
|
end
|
@@ -1,11 +1,6 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
gem 'factory_girl_rails', '1.1.beta1', :group => :test
|
1
|
+
say("\nReplacing Fixtures with FactoryGirl\n", Thor::Shell::Color::YELLOW)
|
2
|
+
gem 'factory_girl_rails', '~> 1.2', :group => [:development, :test]
|
4
3
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
environment templater.load_snippet('generator', 'factory_girl')
|
9
|
-
directory File.expand_path('./../../generators', __FILE__), 'lib/generators'
|
10
|
-
end
|
11
|
-
end
|
4
|
+
templater.post_bundler do
|
5
|
+
environment templater.load_snippet("generator_#{templater.testing_framework.type}", 'factory_girl')
|
6
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
say "\nWhich Fixture Replacement library would you like to use?\n", Thor::Shell::Color::BLUE
|
2
|
+
|
3
|
+
fixture_replacement_options = {
|
4
|
+
'Option' => 'Factory Library',
|
5
|
+
'1' => 'Fabrication',
|
6
|
+
'2' => 'FactoryGirl'
|
7
|
+
}
|
8
|
+
|
9
|
+
print_table fixture_replacement_options.to_a, :ident => 4
|
10
|
+
|
11
|
+
fixture_replacement_selection = ask("\nOption: ", Thor::Shell::Color::BLUE)
|
12
|
+
if fixture_replacement_options.keys[1..-1].include?(fixture_replacement_selection)
|
13
|
+
templater.fixture_replacement.type = fixture_replacement_options[fixture_replacement_selection].downcase.underscore.to_sym
|
14
|
+
end
|
15
|
+
|
16
|
+
$stdout << "\n\n"
|
17
|
+
|
18
|
+
apply templater.recipe(templater.fixture_replacement.type)
|
@@ -3,16 +3,23 @@ say "\nWhich JavaScript Framework would you like to use?\n", Thor::Shell::Color:
|
|
3
3
|
javascript_framework_options = {
|
4
4
|
'Option' => 'JavaScript Framework',
|
5
5
|
'1' => 'jquery',
|
6
|
-
'2' => '
|
6
|
+
'2' => 'prototype'
|
7
7
|
}
|
8
8
|
|
9
9
|
print_table javascript_framework_options.to_a, :ident => 4
|
10
10
|
|
11
11
|
javascript_framework_selection = ask("\nOption: ", Thor::Shell::Color::BLUE)
|
12
|
-
if
|
13
|
-
templater.javascript_framework.type = javascript_framework_options[javascript_framework_selection].
|
12
|
+
if javascript_framework_options.keys[1..-1].include?(javascript_framework_selection)
|
13
|
+
templater.javascript_framework.type = javascript_framework_options[javascript_framework_selection].downcase.to_sym
|
14
14
|
end
|
15
15
|
|
16
16
|
$stdout << "\n\n"
|
17
17
|
|
18
|
-
|
18
|
+
if templater.javascript_framework.jquery?
|
19
|
+
gem 'jquery-rails'
|
20
|
+
else
|
21
|
+
gem 'prototype-rails'
|
22
|
+
end
|
23
|
+
|
24
|
+
remove_file 'app/assets/javascripts/application.js'
|
25
|
+
create_file 'app/assets/javascripts/application.js', templater.load_template('app/assets/javascripts/application.js', templater.javascript_framework.type)
|
@@ -1,11 +1,12 @@
|
|
1
1
|
say("\nReplacing ActiveRecord with Mongoid\n", Thor::Shell::Color::YELLOW )
|
2
2
|
|
3
|
-
gem 'mongoid', '2.
|
4
|
-
gem 'bson_ext', '~> 1.
|
3
|
+
gem 'mongoid', '~> 2.4'
|
4
|
+
gem 'bson_ext', '~> 1.6'
|
5
5
|
|
6
6
|
gsub_file 'config/application.rb', 'require "active_record/railtie"', '# require "active_record/railtie"'
|
7
7
|
|
8
8
|
templater.post_bundler do
|
9
9
|
generate 'mongoid:config'
|
10
10
|
run 'cp config/mongoid.yml config/mongoid.yml.example'
|
11
|
+
create_file 'lib/tasks/assets.rake', templater.load_template('lib/tasks/assets.rake', 'mongoid')
|
11
12
|
end
|
@@ -9,7 +9,7 @@ orm_options = {
|
|
9
9
|
print_table orm_options.to_a, :ident => 4
|
10
10
|
|
11
11
|
orm_selection = ask("\nOption: ", Thor::Shell::Color::BLUE)
|
12
|
-
if
|
12
|
+
if orm_options.keys[1..-1].include?(orm_selection)
|
13
13
|
templater.orm.type = orm_options[orm_selection].underscore.to_sym
|
14
14
|
end
|
15
15
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
say("\nReplacing TestUnit with RSpec as your Testing Framework\n", Thor::Shell::Color::YELLOW )
|
2
2
|
|
3
|
-
gem 'rspec-rails', '
|
3
|
+
gem 'rspec-rails', '~> 2.8', :group => [:development]
|
4
4
|
|
5
5
|
remove_dir 'test'
|
6
6
|
gsub_file 'config/application.rb', 'require "rails/test_unit/railtie"', '# require "rails/test_unit/railtie"'
|
@@ -18,7 +18,8 @@ templater.post_bundler do
|
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
apply templater.recipe('
|
21
|
+
if templater.orm.mongoid?
|
22
|
+
gem('mongoid-rspec', '~> 1.4', :group => :test) if yes?("\n\nWould you like to add Mongoid RSpec matchers? [y|n]: ", Thor::Shell::Color::BLUE)
|
23
|
+
else
|
24
|
+
apply templater.recipe('shoulda_matchers')
|
25
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
gem('shoulda-matchers', '~> 1.0', :group => :test) if yes?("\n\nWould you like to add shoulda matchers? [y|n]: ", Thor::Shell::Color::BLUE)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
say "\nReplacing ERb with Slim as your Template Engine\n", Thor::Shell::Color::YELLOW
|
2
2
|
|
3
|
-
gem 'slim
|
3
|
+
gem 'slim-rails'
|
4
4
|
|
5
5
|
remove_file 'app/views/layouts/application.html.erb'
|
6
6
|
create_file 'app/views/layouts/application.html.slim', templater.load_template('app/views/layouts/application.html.slim', 'slim')
|
@@ -10,11 +10,10 @@ template_engine_options = {
|
|
10
10
|
print_table template_engine_options.to_a, :ident => 4
|
11
11
|
|
12
12
|
template_engine_selection = ask("\nOption: ", Thor::Shell::Color::BLUE)
|
13
|
-
if
|
13
|
+
if template_engine_options.keys[1..-1].include?(template_engine_selection)
|
14
14
|
templater.template_engine.type = template_engine_options[template_engine_selection].downcase.to_sym
|
15
15
|
end
|
16
16
|
|
17
17
|
$stdout << "\n\n"
|
18
18
|
|
19
|
-
apply templater.recipe(
|
20
|
-
apply templater.recipe('slim') if templater.template_engine.slim?
|
19
|
+
apply templater.recipe(templater.template_engine.type)
|
@@ -9,7 +9,7 @@ testing_framework_options = {
|
|
9
9
|
print_table testing_framework_options.to_a, :ident => 4
|
10
10
|
|
11
11
|
testing_framework_selection = ask("\nOption: ", Thor::Shell::Color::BLUE)
|
12
|
-
if
|
12
|
+
if testing_framework_options.keys[1..-1].include?(testing_framework_selection)
|
13
13
|
templater.testing_framework.type = testing_framework_options[testing_framework_selection].underscore.to_sym
|
14
14
|
end
|
15
15
|
|
File without changes
|
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(File.expand_path('./../../', __FILE__))
|
|
3
3
|
require 'rails_templater'
|
4
4
|
require File.join(File.dirname(__FILE__), 'core_ext.rb')
|
5
5
|
|
6
|
-
%w(default orm testing_framework code_coverage javascript_framework template_engine
|
6
|
+
%w(default orm testing_framework fixture_replacement code_coverage javascript_framework template_engine compass cucumber pry).each do |recipe|
|
7
7
|
apply templater.recipe(recipe)
|
8
8
|
end
|
9
9
|
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<%= csrf_meta_tags %>
|
5
|
+
<%= stylesheet_link_tag "application", :media => "all" %>
|
6
|
+
<!--[if lt IE 9]>
|
7
|
+
<%= javascript_include_tag "application" %>
|
8
|
+
<![endif]-->
|
9
|
+
</head>
|
10
|
+
<body>
|
11
|
+
<%= yield %>
|
12
|
+
|
13
|
+
<%= javascript_include_tag "application" %>
|
14
|
+
</body>
|
15
|
+
</html>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
2
|
+
// listed below.
|
3
|
+
//
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
5
|
+
// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
|
6
|
+
//
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
8
|
+
// the compiled file.
|
9
|
+
//
|
10
|
+
// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
|
11
|
+
// GO AFTER THE REQUIRES BELOW.
|
12
|
+
//
|
13
|
+
//= require jquery
|
14
|
+
//= require_tree .
|
@@ -0,0 +1,14 @@
|
|
1
|
+
asset_task = Rake::Task['assets:environment']
|
2
|
+
Rake.application.send(:eval, "@tasks.delete('assets:environment')")
|
3
|
+
|
4
|
+
namespace :assets do
|
5
|
+
task :environment do
|
6
|
+
module ::Mongoid
|
7
|
+
def load!(config_file)
|
8
|
+
puts "Skipping connection to Mongo DB"
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
asset_task.execute
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
2
|
+
// listed below.
|
3
|
+
//
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
5
|
+
// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
|
6
|
+
//
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
8
|
+
// the compiled file.
|
9
|
+
//
|
10
|
+
// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
|
11
|
+
// GO AFTER THE REQUIRES BELOW.
|
12
|
+
//
|
13
|
+
//= require prototype
|
14
|
+
//= require prototype_ujs
|
15
|
+
//= require_tree .
|
data/rails_templater.gemspec
CHANGED
@@ -14,12 +14,11 @@ Gem::Specification.new do |s|
|
|
14
14
|
s.required_rubygems_version = ">= 1.3.6"
|
15
15
|
s.rubyforge_project = "rails_templater"
|
16
16
|
|
17
|
-
s.add_dependency "rails", "~> 3.
|
18
|
-
s.add_development_dependency "bundler", "~> 1.0
|
19
|
-
s.add_development_dependency("rspec", ["~> 2.
|
17
|
+
s.add_dependency "rails", "~> 3.1"
|
18
|
+
s.add_development_dependency "bundler", "~> 1.0"
|
19
|
+
s.add_development_dependency("rspec", ["~> 2.8"])
|
20
20
|
|
21
21
|
s.files = `git ls-files`.split("\n")
|
22
22
|
s.executables = `git ls-files`.split("\n").map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
|
23
23
|
s.require_path = 'lib'
|
24
|
-
|
25
24
|
end
|
metadata
CHANGED
@@ -1,75 +1,57 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_templater
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
6
|
-
- 0
|
7
|
-
- 2
|
8
|
-
- 1
|
9
|
-
version: 0.2.1
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
5
|
+
prerelease:
|
10
6
|
platform: ruby
|
11
|
-
authors:
|
7
|
+
authors:
|
12
8
|
- Kevin Faustino
|
13
9
|
autorequire:
|
14
10
|
bindir: bin
|
15
11
|
cert_chain: []
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
dependencies:
|
20
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2012-03-14 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
21
15
|
name: rails
|
22
|
-
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70269718191460 !ruby/object:Gem::Requirement
|
24
17
|
none: false
|
25
|
-
requirements:
|
18
|
+
requirements:
|
26
19
|
- - ~>
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
|
29
|
-
- 3
|
30
|
-
- 0
|
31
|
-
version: "3.0"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '3.1'
|
32
22
|
type: :runtime
|
33
|
-
version_requirements: *id001
|
34
|
-
- !ruby/object:Gem::Dependency
|
35
|
-
name: bundler
|
36
23
|
prerelease: false
|
37
|
-
|
24
|
+
version_requirements: *70269718191460
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: bundler
|
27
|
+
requirement: &70269718190920 !ruby/object:Gem::Requirement
|
38
28
|
none: false
|
39
|
-
requirements:
|
29
|
+
requirements:
|
40
30
|
- - ~>
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
|
43
|
-
- 1
|
44
|
-
- 0
|
45
|
-
- 0
|
46
|
-
version: 1.0.0
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '1.0'
|
47
33
|
type: :development
|
48
|
-
version_requirements: *id002
|
49
|
-
- !ruby/object:Gem::Dependency
|
50
|
-
name: rspec
|
51
34
|
prerelease: false
|
52
|
-
|
35
|
+
version_requirements: *70269718190920
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: rspec
|
38
|
+
requirement: &70269718190160 !ruby/object:Gem::Requirement
|
53
39
|
none: false
|
54
|
-
requirements:
|
40
|
+
requirements:
|
55
41
|
- - ~>
|
56
|
-
- !ruby/object:Gem::Version
|
57
|
-
|
58
|
-
- 2
|
59
|
-
- 4
|
60
|
-
version: "2.4"
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '2.8'
|
61
44
|
type: :development
|
62
|
-
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *70269718190160
|
63
47
|
description: Template generator for Ruby on Rails 3 applications
|
64
|
-
email:
|
48
|
+
email:
|
65
49
|
- kevin.faustino@gmail.com
|
66
|
-
executables:
|
50
|
+
executables:
|
67
51
|
- templater
|
68
52
|
extensions: []
|
69
|
-
|
70
53
|
extra_rdoc_files: []
|
71
|
-
|
72
|
-
files:
|
54
|
+
files:
|
73
55
|
- .gitignore
|
74
56
|
- .rspec
|
75
57
|
- CHANGELOG
|
@@ -89,38 +71,44 @@ files:
|
|
89
71
|
- lib/rails_templater/testing_framework.rb
|
90
72
|
- lib/rails_templater/version.rb
|
91
73
|
- lib/template_framework/core_ext.rb
|
92
|
-
- lib/template_framework/generators/factory_girl.rb
|
93
|
-
- lib/template_framework/generators/factory_girl/model/model_generator.rb
|
94
|
-
- lib/template_framework/generators/factory_girl/model/templates/fixtures.rb
|
95
74
|
- lib/template_framework/recipes/active_record.rb
|
96
75
|
- lib/template_framework/recipes/code_coverage.rb
|
76
|
+
- lib/template_framework/recipes/compass.rb
|
97
77
|
- lib/template_framework/recipes/cover_me.rb
|
98
78
|
- lib/template_framework/recipes/cucumber.rb
|
99
79
|
- lib/template_framework/recipes/default.rb
|
80
|
+
- lib/template_framework/recipes/erb.rb
|
81
|
+
- lib/template_framework/recipes/fabrication.rb
|
100
82
|
- lib/template_framework/recipes/factory_girl.rb
|
83
|
+
- lib/template_framework/recipes/fixture_replacement.rb
|
101
84
|
- lib/template_framework/recipes/git.rb
|
102
85
|
- lib/template_framework/recipes/haml.rb
|
103
86
|
- lib/template_framework/recipes/javascript_framework.rb
|
104
|
-
- lib/template_framework/recipes/jquery.rb
|
105
87
|
- lib/template_framework/recipes/mongoid.rb
|
106
88
|
- lib/template_framework/recipes/orm.rb
|
89
|
+
- lib/template_framework/recipes/pry.rb
|
107
90
|
- lib/template_framework/recipes/rcov.rb
|
108
|
-
- lib/template_framework/recipes/remarkable.rb
|
109
91
|
- lib/template_framework/recipes/rspec.rb
|
110
|
-
- lib/template_framework/recipes/
|
92
|
+
- lib/template_framework/recipes/shoulda_matchers.rb
|
111
93
|
- lib/template_framework/recipes/slim.rb
|
112
94
|
- lib/template_framework/recipes/template_engine.rb
|
113
95
|
- lib/template_framework/recipes/test_unit.rb
|
114
96
|
- lib/template_framework/recipes/testing_framework.rb
|
115
97
|
- lib/template_framework/snippets/cucumber/factory_girl
|
116
|
-
- lib/template_framework/snippets/
|
98
|
+
- lib/template_framework/snippets/fabrication/generator_rspec
|
99
|
+
- lib/template_framework/snippets/fabrication/generator_test_unit
|
100
|
+
- lib/template_framework/snippets/factory_girl/generator_rspec
|
101
|
+
- lib/template_framework/snippets/factory_girl/generator_test_unit
|
117
102
|
- lib/template_framework/snippets/rspec/mongoid
|
118
103
|
- lib/template_framework/template_runner.rb
|
119
104
|
- lib/template_framework/templates/active_record/config/database.yml
|
105
|
+
- lib/template_framework/templates/erb/app/views/layouts/application.html.erb
|
120
106
|
- lib/template_framework/templates/git/gitignore
|
121
107
|
- lib/template_framework/templates/haml/app/views/layouts/application.html.haml
|
108
|
+
- lib/template_framework/templates/jquery/app/assets/javascripts/application.js
|
122
109
|
- lib/template_framework/templates/mongoid/features/step_definitions/mongoid_steps.rb
|
123
|
-
- lib/template_framework/templates/mongoid/
|
110
|
+
- lib/template_framework/templates/mongoid/lib/tasks/assets.rake
|
111
|
+
- lib/template_framework/templates/prototype/app/assets/javascripts/application.js
|
124
112
|
- lib/template_framework/templates/slim/app/views/layouts/application.html.slim
|
125
113
|
- rails_templater.gemspec
|
126
114
|
- spec/fixtures/sample_snippet
|
@@ -135,39 +123,31 @@ files:
|
|
135
123
|
- spec/spec_helper.rb
|
136
124
|
- spec/support/fixtures.rb
|
137
125
|
- spec/support/paths.rb
|
138
|
-
has_rdoc: true
|
139
126
|
homepage: http://rubygems.org/gems/rails_templater
|
140
127
|
licenses: []
|
141
|
-
|
142
128
|
post_install_message:
|
143
129
|
rdoc_options: []
|
144
|
-
|
145
|
-
require_paths:
|
130
|
+
require_paths:
|
146
131
|
- lib
|
147
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
132
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
148
133
|
none: false
|
149
|
-
requirements:
|
150
|
-
- -
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
|
134
|
+
requirements:
|
135
|
+
- - ! '>='
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '0'
|
138
|
+
segments:
|
153
139
|
- 0
|
154
|
-
|
155
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
|
+
hash: -4157809068450485296
|
141
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
156
142
|
none: false
|
157
|
-
requirements:
|
158
|
-
- -
|
159
|
-
- !ruby/object:Gem::Version
|
160
|
-
segments:
|
161
|
-
- 1
|
162
|
-
- 3
|
163
|
-
- 6
|
143
|
+
requirements:
|
144
|
+
- - ! '>='
|
145
|
+
- !ruby/object:Gem::Version
|
164
146
|
version: 1.3.6
|
165
147
|
requirements: []
|
166
|
-
|
167
148
|
rubyforge_project: rails_templater
|
168
|
-
rubygems_version: 1.
|
149
|
+
rubygems_version: 1.8.10
|
169
150
|
signing_key:
|
170
151
|
specification_version: 3
|
171
152
|
summary: Template generator for Ruby on Rails 3 applications
|
172
153
|
test_files: []
|
173
|
-
|
@@ -1,11 +0,0 @@
|
|
1
|
-
require 'rails/generators/named_base'
|
2
|
-
|
3
|
-
module FactoryGirl
|
4
|
-
module Generators
|
5
|
-
class Base < Rails::Generators::NamedBase #:nodoc:
|
6
|
-
def self.source_root
|
7
|
-
@_factory_girl_source_root ||= File.expand_path(File.join(File.dirname(__FILE__), 'factory_girl', generator_name, 'templates'))
|
8
|
-
end
|
9
|
-
end
|
10
|
-
end
|
11
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require 'generators/factory_girl'
|
2
|
-
|
3
|
-
module FactoryGirl
|
4
|
-
module Generators
|
5
|
-
class ModelGenerator < Base
|
6
|
-
argument :attributes, :type => :array, :default => [], :banner => "field:type field:type"
|
7
|
-
class_option :dir, :type => :string, :default => "spec/factories", :desc => "The directory where the factories should go"
|
8
|
-
|
9
|
-
def create_fixture_file
|
10
|
-
template 'fixtures.rb', File.join(options[:dir], "#{table_name}.rb")
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
@@ -1,10 +0,0 @@
|
|
1
|
-
say("\nReplacing Prototype with JQuery as your JavaScript Framework\n", Thor::Shell::Color::YELLOW )
|
2
|
-
|
3
|
-
gem 'jquery-rails'
|
4
|
-
|
5
|
-
remove_file 'public/javascripts/rails.js'
|
6
|
-
gsub_file 'config/application.rb', /(config.action_view.javascript_expansions\[:defaults\] = %w\(\))/, '# \1'
|
7
|
-
|
8
|
-
templater.post_bundler do
|
9
|
-
generate 'jquery:install'
|
10
|
-
end
|
@@ -1,12 +0,0 @@
|
|
1
|
-
if templater.orm.mongoid?
|
2
|
-
gem 'remarkable_activemodel', '>=4.0.0.alpha4', :group => :test
|
3
|
-
gem 'remarkable_mongoid', :group => :test
|
4
|
-
require_remarkable = "\nrequire 'remarkable/active_model'\nrequire 'remarkable/mongoid'"
|
5
|
-
elsif templater.orm.active_record?
|
6
|
-
gem 'remarkable_activerecord', '>=4.0.0.alpha4', :group => :test
|
7
|
-
require_remarkable = "\nrequire 'remarkable/active_record'"
|
8
|
-
end
|
9
|
-
|
10
|
-
templater.post_bundler do
|
11
|
-
inject_into_file 'spec/spec_helper.rb', require_remarkable, :after => "require 'rspec/rails'"
|
12
|
-
end
|
@@ -1,54 +0,0 @@
|
|
1
|
-
if yes?("\n[Stylesheets] Would you like to use Sass for Syntactically Awesome Stylesheets? [y|n]: ", Thor::Shell::Color::BLUE)
|
2
|
-
|
3
|
-
# gem 'sass' # TODO: Wait until Sass 3.1 is released
|
4
|
-
gem 'haml'
|
5
|
-
|
6
|
-
if yes?("\nWould you like to use Compass? [y|n]: ", Thor::Shell::Color::BLUE)
|
7
|
-
design_options = {
|
8
|
-
'Option' => 'Design Framework',
|
9
|
-
'1' => 'Compass',
|
10
|
-
'2' => 'Compass with blueprint semantic',
|
11
|
-
'3' => 'Compass with blueprint basic',
|
12
|
-
'4' => 'Compass with 960.gs'
|
13
|
-
}
|
14
|
-
|
15
|
-
print_table design_options.to_a, :ident => 4
|
16
|
-
design_selection = ask("\nOption: ", Thor::Shell::Color::BLUE)
|
17
|
-
|
18
|
-
design_framework = case design_selection
|
19
|
-
when "1"
|
20
|
-
:compass
|
21
|
-
when "2"
|
22
|
-
:compass_blueprint_semantic
|
23
|
-
when "3"
|
24
|
-
:compass_blueprint
|
25
|
-
when "4"
|
26
|
-
:compass_960
|
27
|
-
else
|
28
|
-
:none
|
29
|
-
end
|
30
|
-
|
31
|
-
unless design_framework == :none
|
32
|
-
gem 'compass'
|
33
|
-
|
34
|
-
compass_sass_dir = "app/stylesheets"
|
35
|
-
compass_css_dir = "public/stylesheets/compiled"
|
36
|
-
framework_option = case design_framework
|
37
|
-
when :compass_blueprint
|
38
|
-
"--using blueprint/basic"
|
39
|
-
when :compass_blueprint_semantic
|
40
|
-
"--using blueprint/semantic"
|
41
|
-
when :compass_960
|
42
|
-
gem 'compass-960-plugin'
|
43
|
-
"-r ninesixty --using 960"
|
44
|
-
end
|
45
|
-
|
46
|
-
compass_command = "bundle exec compass init rails . #{framework_option} --css-dir=#{compass_css_dir} --sass-dir=#{compass_sass_dir} "
|
47
|
-
|
48
|
-
templater.post_bundler do
|
49
|
-
run compass_command
|
50
|
-
end
|
51
|
-
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|