icebreaker 0.0.4 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -4,3 +4,4 @@ pkg/*
4
4
  tmp
5
5
  .idea
6
6
  .DS_Store
7
+ sampleapp
data/.rvmrc CHANGED
@@ -1,5 +1 @@
1
- rvm --create 1.9.2@icebreaker
2
-
3
- if [[ -s icebreaker.gems ]] ; then
4
- rvm gemset import icebreaker.gems
5
- fi
1
+ rvm 1.9.2@icebreaker --create
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License
2
2
 
3
- Copyright (c) 2010 Quick Left
3
+ Copyright (c) 2011 Mark Dillon
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  IceBreaker
2
2
  ===========
3
- Generate a Rails 3 app with the Mongoid ORM (or OM) and RSpec for BDD testing.
3
+ Generate a Rails 3.1 app with the Mongoid ORM (or OM) and RSpec for BDD testing.
4
4
 
5
5
 
6
6
  ### What you get
data/icebreaker.gemspec CHANGED
@@ -11,12 +11,12 @@ Gem::Specification.new do |s|
11
11
  s.summary = "icebreaker-#{s.version}"
12
12
  s.description = "Generate a Rails 3 app with the Mongoid ORM (or OM) and RSpec for BDD testing."
13
13
 
14
- s.required_rubygems_version = "~> 1.3.6"
14
+ s.required_rubygems_version = "~> 1.6.0"
15
15
  s.rubyforge_project = "icebreaker"
16
16
 
17
17
  s.add_dependency "thor"
18
18
  # s.add_dependency "mail" # Hack to get around "mail requires i18n (~> 0.4.1, runtime)" error
19
- s.add_dependency "rails"
19
+ s.add_dependency "rails", '3.1.0.beta1'
20
20
  s.add_development_dependency "bundler"
21
21
 
22
22
  s.files = `git ls-files`.split("\n")
@@ -9,22 +9,22 @@ module IceBreaker
9
9
  desc "new [app]", "Create a new Rails 3 application"
10
10
  long_desc <<-D
11
11
  IceBreaker will ask you a few questions to determine what features you
12
- would like to generate. Based on your answers it will setup a new Rails 3 application.
12
+ would like to generate. Based on your answers it will setup a new Rails 3.1 application.
13
13
  D
14
14
 
15
15
  def new(project)
16
16
  # Check for a gemset and warn if none
17
17
  gemset = `rvm gemset name`.chomp
18
- unless gemset == 'icebreaker'
19
- say "It is recommend that you use a separate RVM gemset called 'icebreaker' when creating a Rails project with IceBreaker. This will keep your system gems clean."
20
- say "You can create it by running this command: rvm use 1.9.2@icebreaker --create"
21
- if yes?("Would you like to exit now and create a separate RVM gemset for icebreaker?")
18
+ unless gemset == project
19
+ say "It is recommend that you use a separate RVM gemset called '#{project}' when creating a Rails project with IceBreaker. This will keep your system gems clean."
20
+ say "You can exit now and create it by running this command: rvm use 1.9.2@#{project} --create"
21
+ if yes?("Would you like to exit now and create a separate RVM gemset for #{project}?")
22
22
  exit 0
23
23
  end
24
24
  end
25
25
 
26
- command = "rails new #{project} --skip-active-record --skip-test-unit --skip-prototype --template=#{template} "
27
- puts "Creating new Rails 3 project with: #{command}"
26
+ command = "rails new #{project} --skip-active-record --skip-test-unit --template=#{template} "
27
+ puts "Creating new Rails 3.1 project with: #{command}"
28
28
  exec(command)
29
29
  end
30
30
 
@@ -1,3 +1,3 @@
1
1
  module IceBreaker
2
- VERSION = "0.0.4"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -37,6 +37,9 @@ apply File.expand_path("../mongoid.rb", __FILE__)
37
37
  # Apply JQuery
38
38
  apply File.expand_path("../jquery.rb", __FILE__)
39
39
 
40
+ # Convert to HAML
41
+ apply File.expand_path("../haml.rb", __FILE__)
42
+
40
43
  # Apply Test Suite
41
44
  apply File.expand_path("../test_suite.rb", __FILE__)
42
45
 
@@ -49,8 +52,11 @@ apply File.expand_path("../rails_clean.rb", __FILE__)
49
52
  # Apply RVM settings
50
53
  apply File.expand_path("../rvm.rb", __FILE__)
51
54
 
55
+ # Install Heroku gem
56
+ apply File.expand_path("../heroku.rb", __FILE__)
57
+
52
58
  git :add => "."
53
- git :commit => "-am 'Initial Commit'"
59
+ git :commit => "-am 'Initial Icebreaker Commit'"
54
60
 
55
61
  say <<-D
56
62
 
data/templates/gemfile.rb CHANGED
@@ -1,24 +1,26 @@
1
- run 'rm Gemfile'
2
- create_file 'Gemfile', "source 'http://rubygems.org'\n"
1
+ append_file "Gemfile" do
2
+ <<-RUBY
3
3
 
4
+ # Project Gems
5
+
6
+ RUBY
7
+ end
4
8
  # Rails
5
- gem "rails", "3.0.4"
6
9
 
7
10
  # MongoID
8
- gem "mongoid", "2.0.0.rc.7"
9
- gem 'bson', '1.2.1'
10
- gem 'bson_ext', '1.2.1'
11
+ gem "mongoid", :git => "http://github.com/mongoid/mongoid.git"
12
+ gem "bson_ext"
11
13
 
12
14
  # HTML, CSS and JavaScript
13
- gem "haml-rails"
15
+ gem "haml"
14
16
  gem "will_paginate", "3.0.pre2"
15
17
 
16
- # JavaScript
17
- gem "jquery-rails"
18
+ # Crypto
19
+ gem "bcrypt-ruby", :require => "bcrypt"
18
20
 
19
21
  # Development dependencies
20
22
  # gem 'html5-boilerplate' # TODO: Get html5-boilerplate working
21
- gem 'rspec-rails', '2.5.0', :group => [:development]
23
+ gem 'rspec-rails', '2.6.0.rc6', :group => [:development]
22
24
  gem 'nifty-generators'
23
25
 
24
26
  # Development and test support
@@ -26,13 +28,11 @@ gem 'factory_girl_rails', :group => [:development, :test]
26
28
  gem 'faker', :group => [:development, :test]
27
29
 
28
30
  # Test dependencies
29
- gem 'rspec', '2.5.0', :group => [:test]
31
+ gem 'rspec', '2.6.0.rc6', :group => [:test]
30
32
  gem 'webrat', '0.7.1', :group => [:test]
31
33
 
32
34
  # Utilities
33
35
  gem 'awesome_print', :group => [:development]
34
- gem 'heroku', :group => :development
35
-
36
36
 
37
37
  # Install bundled gems
38
38
  run 'bundle install'
data/templates/haml.rb ADDED
@@ -0,0 +1,15 @@
1
+ run 'rm app/views/layouts/application.html.erb'
2
+
3
+ create_file 'app/views/layouts/application.html.haml' do
4
+ <<-HAML
5
+ !!! 5
6
+ %html
7
+ %head
8
+ %title= @title ? "#{app_name} | \#\{\@title\}\" : '#{app_name}'
9
+ = stylesheet_link_tag "application"
10
+ = javascript_include_tag "application"
11
+ = csrf_meta_tags
12
+ %body
13
+ = yield
14
+ HAML
15
+ end
@@ -0,0 +1 @@
1
+ run 'gem install heroku'
data/templates/jquery.rb CHANGED
@@ -1 +1,7 @@
1
- run "rails generate jquery:install --ui"
1
+ # run "rails generate jquery:install --ui"
2
+ gsub_file 'app/assets/javascripts/application.js', /\/\/\= require jquery_ujs/ do
3
+ <<-RUBY
4
+ //= require jquery_ujs
5
+ //= require jquery-ui
6
+ RUBY
7
+ end
@@ -1,5 +1,5 @@
1
1
  # Clean up default Rails generated stuff
2
2
  run 'rm public/index.html'
3
- run 'rm public/images/rails.png'
3
+ run 'rm app/assets/images/rails.png'
4
4
  run 'rm README'
5
5
  run 'touch README.markdown'
@@ -1,5 +1,8 @@
1
1
  run 'rails generate rspec:install'
2
2
 
3
+ # Specify rspec for generators
4
+ gsub_file 'config/application.rb', /.*config\.generators\.test_framework = false/, ' # config.generators.test_framework = false'
5
+
3
6
  # MongoID Teardown
4
7
  gsub_file 'spec/spec_helper.rb', /config\.fixture_path/, '# config.fixture_path'
5
8
  gsub_file 'spec/spec_helper.rb', /config\.use_transactional_fixtures/, '# config.use_transactional_fixtures'
@@ -11,81 +14,3 @@ gsub_file 'spec/spec_helper.rb', /end/ do
11
14
  end
12
15
  RUBY
13
16
  end
14
-
15
- # cucumber_install = 'rails generate cucumber:install --capybara --rspec'
16
- # cucumber_install = "#{cucumber_install} --skip-database" if ENV['MOLOGUE_MONGOID']
17
- # run cucumber_install
18
- #
19
- # if ENV['MOLOGUE_MONGOID']
20
- # append_file 'features/support/env.rb' do
21
- # <<-RUBY
22
- #
23
- # # Clean MongoDB between tests
24
- # require 'database_cleaner'
25
- # DatabaseCleaner.strategy = :truncation
26
- # Before do
27
- # DatabaseCleaner.clean
28
- # end
29
- #
30
- # RUBY
31
- # end
32
- # end
33
- #
34
- # run 'rails generate pickle --email'
35
- #
36
- # test_framework = "g.test_framework :rspec"
37
- # test_framework = "#{test_framework}, :fixture => false" if ENV['MOLOGUE_MONGOID']
38
- # inject_into_file 'config/application.rb', :after => "# Configure the default encoding used in templates for Ruby 1.9.\n" do
39
- # <<-RUBY
40
- # config.generators do |g|
41
- # #{test_framework}
42
- # end
43
- # RUBY
44
- # end
45
- #
46
- # inject_into_file 'features/support/env.rb', :after => "ENV[\"RAILS_ENV\"] ||= \"test\"\n" do
47
- # <<-RUBY
48
- # $VERBOSE = nil
49
- # RUBY
50
- # end
51
- #
52
- # gsub_file 'features/support/env.rb',/require 'cucumber\/rails\/capybara_javascript_emulation'/,'#require \'cucumber/rails/capybara_javascript_emulation\''
53
- #
54
- # run 'mkdir spec/factories'
55
- #
56
- # create_file 'features/step_definitions/web_steps_extended.rb' do
57
- # <<-'FILE'
58
- # When /^I confirm a js popup on the next step$/ do
59
- # page.evaluate_script("window.alert = function(msg) { return true; }")
60
- # page.evaluate_script("window.confirm = function(msg) { return true; }")
61
- # end
62
- #
63
- # When /^I perform the following actions:$/ do |table|
64
- # table.hashes.each do |row|
65
- # case row['Action']
66
- # when 'Fill in'
67
- # Given "I fill in \"#{row['Field']}\" with \"#{row['Value']}\""
68
- # when 'Check'
69
- # if row['Value'] =~ /true/
70
- # Given "I check \"#{row['Field']}\""
71
- # else
72
- # Given "I uncheck \"#{row['Field']}\""
73
- # end
74
- # when 'Choose'
75
- # Given "I choose \"#{row['Field']}\""
76
- # end
77
- # end
78
- # end
79
- # FILE
80
- # end
81
- #
82
- # create_file 'features/step_definitions/factory_steps.rb' do
83
- # <<-'FILE'
84
- # Given /^the following (.+) records?$/ do |factory, table|
85
- # table.hashes.each do |hash|
86
- # hash.each{|k,v| hash[k] = nil if v == "nil" } # FIXME: hack to make resend_email_verification.feature work
87
- # Factory(factory, hash)
88
- # end
89
- # end
90
- # FILE
91
- # end
metadata CHANGED
@@ -1,12 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: icebreaker
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 0
8
- - 4
9
- version: 0.0.4
4
+ prerelease:
5
+ version: 0.1.0
10
6
  platform: ruby
11
7
  authors:
12
8
  - Mark Dillon
@@ -14,7 +10,7 @@ autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
12
 
17
- date: 2011-02-15 00:00:00 -08:00
13
+ date: 2011-05-13 00:00:00 -07:00
18
14
  default_executable:
19
15
  dependencies:
20
16
  - !ruby/object:Gem::Dependency
@@ -25,8 +21,6 @@ dependencies:
25
21
  requirements:
26
22
  - - ">="
27
23
  - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
24
  version: "0"
31
25
  type: :runtime
32
26
  version_requirements: *id001
@@ -36,11 +30,9 @@ dependencies:
36
30
  requirement: &id002 !ruby/object:Gem::Requirement
37
31
  none: false
38
32
  requirements:
39
- - - ">="
33
+ - - "="
40
34
  - !ruby/object:Gem::Version
41
- segments:
42
- - 0
43
- version: "0"
35
+ version: 3.1.0.beta1
44
36
  type: :runtime
45
37
  version_requirements: *id002
46
38
  - !ruby/object:Gem::Dependency
@@ -51,8 +43,6 @@ dependencies:
51
43
  requirements:
52
44
  - - ">="
53
45
  - !ruby/object:Gem::Version
54
- segments:
55
- - 0
56
46
  version: "0"
57
47
  type: :development
58
48
  version_requirements: *id003
@@ -80,6 +70,8 @@ files:
80
70
  - lib/icebreaker/version.rb
81
71
  - templates/bootstrap.rb
82
72
  - templates/gemfile.rb
73
+ - templates/haml.rb
74
+ - templates/heroku.rb
83
75
  - templates/html5_boilerplate.rb
84
76
  - templates/jquery.rb
85
77
  - templates/mongoid.rb
@@ -101,25 +93,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
101
93
  requirements:
102
94
  - - ">="
103
95
  - !ruby/object:Gem::Version
104
- segments:
105
- - 0
106
96
  version: "0"
107
97
  required_rubygems_version: !ruby/object:Gem::Requirement
108
98
  none: false
109
99
  requirements:
110
100
  - - ~>
111
101
  - !ruby/object:Gem::Version
112
- segments:
113
- - 1
114
- - 3
115
- - 6
116
- version: 1.3.6
102
+ version: 1.6.0
117
103
  requirements: []
118
104
 
119
105
  rubyforge_project: icebreaker
120
- rubygems_version: 1.3.7
106
+ rubygems_version: 1.6.2
121
107
  signing_key:
122
108
  specification_version: 3
123
- summary: icebreaker-0.0.4
109
+ summary: icebreaker-0.1.0
124
110
  test_files: []
125
111