presto-rails 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/bin/presto +4 -0
- data/lib/presto.rb +15 -0
- data/templates/flatiron.rb +100 -0
- metadata +63 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: b32f9981e8bb3b2cb353bab960d2a4bf4e5ae21c
|
4
|
+
data.tar.gz: 50cf56218a7d87eafd32a0b8d5f2bad8d4835705
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 816cbe80c4d0bc8ead62173bc64a6e7ad57f5d1ec62171e8837c6eb5b63a72798e37943d4161e771df6cb577493993b8fea3e99d21208db906fe4f5b7c2b2072
|
7
|
+
data.tar.gz: 891fe8e0f0016e1513532403fb00e72bf3dd575fe522eeb3564d8f1e8efcfef910cc59e5c50dfa71556c28c08d01710910067604800e5e4588311d01dabff3b7
|
data/bin/presto
ADDED
data/lib/presto.rb
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
class Presto
|
2
|
+
|
3
|
+
PRESTO_ROOT = File.expand_path('../', File.dirname(__FILE__))
|
4
|
+
def self.run
|
5
|
+
if ARGV[0].nil? || ['-h','--help'].include?(ARGV[0])
|
6
|
+
puts <<-HELP
|
7
|
+
Usage:
|
8
|
+
presto <app_name>
|
9
|
+
HELP
|
10
|
+
else
|
11
|
+
system("rails new #{ARGV[0]} -Tm #{PRESTO_ROOT}/templates/flatiron.rb")
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
@@ -0,0 +1,100 @@
|
|
1
|
+
# add development and testing gems
|
2
|
+
gem_group :test, :development do
|
3
|
+
gem 'rspec-rails'
|
4
|
+
gem 'capybara'
|
5
|
+
gem 'selenium-webdriver'
|
6
|
+
gem 'better_errors'
|
7
|
+
gem 'binding_of_caller'
|
8
|
+
gem 'terminal-notifier-guard'
|
9
|
+
gem 'factory_girl_rails'
|
10
|
+
gem 'simplecov'
|
11
|
+
gem 'database_cleaner'
|
12
|
+
gem 'guard', '>=2.1.0'
|
13
|
+
gem 'guard-rspec'
|
14
|
+
end
|
15
|
+
|
16
|
+
system("bundle > /dev/null")
|
17
|
+
# setup RSpec: rails g rspec:install
|
18
|
+
generate(:"rspec:install")
|
19
|
+
|
20
|
+
# edit spec/spec_helper.rb
|
21
|
+
File.open("spec/spec_helper.rb", "r+") do |f|
|
22
|
+
out = ""
|
23
|
+
f.each do |line|
|
24
|
+
if line =~ /require 'rspec\/autorun'/
|
25
|
+
# add SimpleCov
|
26
|
+
out << line
|
27
|
+
out << <<-CODE.strip_heredoc
|
28
|
+
require 'simplecov'
|
29
|
+
SimpleCov.start 'rails'
|
30
|
+
CODE
|
31
|
+
elsif line =~ /config\.fixture_path/
|
32
|
+
# comment out fixtures
|
33
|
+
out << " ##{line[1..-1]}"
|
34
|
+
elsif line =~ /config\.use_transactional_fixtures/
|
35
|
+
# set transactional fixtures to false
|
36
|
+
out << line.sub("true", "false")
|
37
|
+
elsif line =~ /RSpec\.configure do/
|
38
|
+
# add Database Cleaner
|
39
|
+
out << line
|
40
|
+
out << <<-CODE.gsub(/^ {6}/, '')
|
41
|
+
config.before(:suite) do
|
42
|
+
DatabaseCleaner.strategy = :transaction
|
43
|
+
DatabaseCleaner.clean_with(:truncation)
|
44
|
+
end
|
45
|
+
|
46
|
+
config.before(:each) do
|
47
|
+
DatabaseCleaner.start
|
48
|
+
end
|
49
|
+
|
50
|
+
config.after(:each) do
|
51
|
+
DatabaseCleaner.clean
|
52
|
+
end
|
53
|
+
CODE
|
54
|
+
else
|
55
|
+
out << line
|
56
|
+
end
|
57
|
+
end
|
58
|
+
f.pos = 0
|
59
|
+
f.print out.chomp
|
60
|
+
f.truncate(f.pos)
|
61
|
+
end
|
62
|
+
|
63
|
+
# make spec/features directory
|
64
|
+
run('mkdir -p spec/features')
|
65
|
+
|
66
|
+
# create feature_helper.rb
|
67
|
+
file 'spec/feature_helper.rb', <<-CODE.strip_heredoc.chomp
|
68
|
+
require 'spec_helper'
|
69
|
+
require 'capybara/rails'
|
70
|
+
CODE
|
71
|
+
|
72
|
+
# setup Guardfile
|
73
|
+
file 'Guardfile', %q(
|
74
|
+
guard 'rails' do
|
75
|
+
watch('Gemfile.lock')
|
76
|
+
watch(%r{^(config|lib)/.*})
|
77
|
+
end
|
78
|
+
|
79
|
+
|
80
|
+
guard :rspec do
|
81
|
+
watch(%r{^spec/.+_spec\.rb$})
|
82
|
+
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
|
83
|
+
watch('spec/spec_helper.rb') { "spec" }
|
84
|
+
|
85
|
+
# Rails example
|
86
|
+
watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
87
|
+
watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
|
88
|
+
watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
|
89
|
+
watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
|
90
|
+
watch('config/routes.rb') { "spec/routing" }
|
91
|
+
watch('app/controllers/application_controller.rb') { "spec/controllers" }
|
92
|
+
|
93
|
+
# Capybara features specs
|
94
|
+
watch(%r{^app/views/(.+)/.*\.(erb|haml|slim)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
|
95
|
+
|
96
|
+
# Turnip features and steps
|
97
|
+
watch(%r{^spec/acceptance/(.+)\.feature$})
|
98
|
+
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
|
99
|
+
end
|
100
|
+
).strip.gsub(/^ {2}/, '')
|
metadata
ADDED
@@ -0,0 +1,63 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: presto-rails
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Logan Hasson
|
8
|
+
- Josh Scaglione
|
9
|
+
- Manuel Neuhauser
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2013-11-06 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: rails
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 4.0.0
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - '>='
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: 4.0.0
|
29
|
+
description: Sets up a flatiron school stack rails application.
|
30
|
+
email: teamevalruby@gmail.com
|
31
|
+
executables:
|
32
|
+
- presto
|
33
|
+
extensions: []
|
34
|
+
extra_rdoc_files: []
|
35
|
+
files:
|
36
|
+
- bin/presto
|
37
|
+
- lib/presto.rb
|
38
|
+
- templates/flatiron.rb
|
39
|
+
homepage: http://rubygems.org/gems/presto-rails
|
40
|
+
licenses:
|
41
|
+
- MIT
|
42
|
+
metadata: {}
|
43
|
+
post_install_message:
|
44
|
+
rdoc_options: []
|
45
|
+
require_paths:
|
46
|
+
- lib
|
47
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
48
|
+
requirements:
|
49
|
+
- - '>='
|
50
|
+
- !ruby/object:Gem::Version
|
51
|
+
version: '0'
|
52
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - '>='
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
57
|
+
requirements: []
|
58
|
+
rubyforge_project:
|
59
|
+
rubygems_version: 2.0.6
|
60
|
+
signing_key:
|
61
|
+
specification_version: 4
|
62
|
+
summary: presto-rails gem
|
63
|
+
test_files: []
|