presto-rails 0.0.1
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 +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: []
|