arkenstone 0.1.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.
Files changed (46) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +19 -0
  3. data/.gitignore +10 -0
  4. data/.rspec +2 -0
  5. data/.rubocop.yml +1148 -0
  6. data/.ruby-version +1 -0
  7. data/.travis.yml +5 -0
  8. data/CODE_OF_CONDUCT.md +13 -0
  9. data/Gemfile +3 -0
  10. data/LICENSE +674 -0
  11. data/README.md +41 -0
  12. data/Rakefile +6 -0
  13. data/arkenstone.gemspec +34 -0
  14. data/bin/arkenstone +21 -0
  15. data/bin/console +7 -0
  16. data/bin/setup +7 -0
  17. data/lib/arkenstone.rb +12 -0
  18. data/lib/arkenstone/app_builder.rb +118 -0
  19. data/lib/arkenstone/generators/app_generator.rb +56 -0
  20. data/lib/arkenstone/templates/.travis.yml.erb +3 -0
  21. data/lib/arkenstone/templates/Gemfile.erb +52 -0
  22. data/lib/arkenstone/templates/README.md.erb +1 -0
  23. data/lib/arkenstone/templates/_flashes.html.erb +3 -0
  24. data/lib/arkenstone/templates/_form.html.erb +13 -0
  25. data/lib/arkenstone/templates/application.html.erb +16 -0
  26. data/lib/arkenstone/templates/application.scss +7 -0
  27. data/lib/arkenstone/templates/database.yml.erb +12 -0
  28. data/lib/arkenstone/templates/database_cleaner.rb +21 -0
  29. data/lib/arkenstone/templates/en.yml.erb +3 -0
  30. data/lib/arkenstone/templates/factories.rb +2 -0
  31. data/lib/arkenstone/templates/high_voltage.rb +4 -0
  32. data/lib/arkenstone/templates/home.html.erb +2 -0
  33. data/lib/arkenstone/templates/rails +9 -0
  34. data/lib/arkenstone/templates/rails_helper.rb +16 -0
  35. data/lib/arkenstone/templates/rake +9 -0
  36. data/lib/arkenstone/templates/simple_form.en.yml +31 -0
  37. data/lib/arkenstone/templates/simple_form.rb +165 -0
  38. data/lib/arkenstone/templates/spring +15 -0
  39. data/lib/arkenstone/templates/user.rb +3 -0
  40. data/lib/arkenstone/version.rb +5 -0
  41. data/spec/arkenstone_spec.rb +7 -0
  42. data/spec/features/new_project_spec.rb +136 -0
  43. data/spec/features/new_project_with_authentication_spec.rb +24 -0
  44. data/spec/spec_helper.rb +13 -0
  45. data/spec/support/features/new_project.rb +57 -0
  46. metadata +183 -0
@@ -0,0 +1,13 @@
1
+ Dir["./spec/support/**/*.rb"].each { |file| require file }
2
+
3
+ RSpec.configure do |config|
4
+ config.include Features
5
+
6
+ config.expect_with :rspec do |expectations|
7
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
8
+ end
9
+
10
+ config.mock_with :rspec do |mocks|
11
+ mocks.verify_partial_doubles = true
12
+ end
13
+ end
@@ -0,0 +1,57 @@
1
+ module Features
2
+ APP_NAME = "arkenstone_test"
3
+
4
+ def app_name
5
+ APP_NAME
6
+ end
7
+
8
+ def run_arkenstone(args = nil)
9
+ Dir.chdir(Dir.tmpdir) do
10
+ `#{arkenstone_bin} #{args} #{project_path}`
11
+ end
12
+ end
13
+
14
+ def remove_dummy_app
15
+ FileUtils.rm_rf(project_path)
16
+ end
17
+
18
+ def project_path
19
+ File.join(Dir.tmpdir, APP_NAME)
20
+ end
21
+
22
+ def models_path
23
+ "#{project_path}/app/models"
24
+ end
25
+
26
+ def controllers_path
27
+ "#{project_path}/app/controllers"
28
+ end
29
+
30
+ def config_path
31
+ "#{project_path}/config"
32
+ end
33
+
34
+ def lib_path
35
+ "#{project_path}/lib"
36
+ end
37
+
38
+ def file_contents(file)
39
+ File.open(file, &:read)
40
+ end
41
+
42
+ def project_file_exist?(file)
43
+ Dir.chdir(project_path) do
44
+ File.exist?(file)
45
+ end
46
+ end
47
+
48
+ private
49
+
50
+ def root_path
51
+ File.expand_path("../../../../", __FILE__)
52
+ end
53
+
54
+ def arkenstone_bin
55
+ File.join(root_path, "bin", "arkenstone")
56
+ end
57
+ end
metadata ADDED
@@ -0,0 +1,183 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: arkenstone
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Nicholas Scheurich
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-02-09 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.2'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 4.2.0
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '4.2'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 4.2.0
33
+ - !ruby/object:Gem::Dependency
34
+ name: bitters
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '0.1'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.1'
47
+ - !ruby/object:Gem::Dependency
48
+ name: bundler
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: pry
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0.1'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '0.1'
75
+ - !ruby/object:Gem::Dependency
76
+ name: rake
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '10.0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '10.0'
89
+ - !ruby/object:Gem::Dependency
90
+ name: rspec
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '3.4'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '3.4'
103
+ description: |
104
+ The Arkenstone is a Ruby on Rails application generator set up to use my
105
+ preferred development configuration. It is heavily influenced by thoughtbot’s
106
+ Suspenders; I simply prefer to have something that I’ve pruned from infancy
107
+ and just totally *get*, you know?
108
+ email: nick@scheurich.me
109
+ executables:
110
+ - arkenstone
111
+ extensions: []
112
+ extra_rdoc_files: []
113
+ files:
114
+ - ".codeclimate.yml"
115
+ - ".gitignore"
116
+ - ".rspec"
117
+ - ".rubocop.yml"
118
+ - ".ruby-version"
119
+ - ".travis.yml"
120
+ - CODE_OF_CONDUCT.md
121
+ - Gemfile
122
+ - LICENSE
123
+ - README.md
124
+ - Rakefile
125
+ - arkenstone.gemspec
126
+ - bin/arkenstone
127
+ - bin/console
128
+ - bin/setup
129
+ - lib/arkenstone.rb
130
+ - lib/arkenstone/app_builder.rb
131
+ - lib/arkenstone/generators/app_generator.rb
132
+ - lib/arkenstone/templates/.travis.yml.erb
133
+ - lib/arkenstone/templates/Gemfile.erb
134
+ - lib/arkenstone/templates/README.md.erb
135
+ - lib/arkenstone/templates/_flashes.html.erb
136
+ - lib/arkenstone/templates/_form.html.erb
137
+ - lib/arkenstone/templates/application.html.erb
138
+ - lib/arkenstone/templates/application.scss
139
+ - lib/arkenstone/templates/database.yml.erb
140
+ - lib/arkenstone/templates/database_cleaner.rb
141
+ - lib/arkenstone/templates/en.yml.erb
142
+ - lib/arkenstone/templates/factories.rb
143
+ - lib/arkenstone/templates/high_voltage.rb
144
+ - lib/arkenstone/templates/home.html.erb
145
+ - lib/arkenstone/templates/rails
146
+ - lib/arkenstone/templates/rails_helper.rb
147
+ - lib/arkenstone/templates/rake
148
+ - lib/arkenstone/templates/simple_form.en.yml
149
+ - lib/arkenstone/templates/simple_form.rb
150
+ - lib/arkenstone/templates/spring
151
+ - lib/arkenstone/templates/user.rb
152
+ - lib/arkenstone/version.rb
153
+ - spec/arkenstone_spec.rb
154
+ - spec/features/new_project_spec.rb
155
+ - spec/features/new_project_with_authentication_spec.rb
156
+ - spec/spec_helper.rb
157
+ - spec/support/features/new_project.rb
158
+ homepage: https://github.com/ngscheurich/arkenstone
159
+ licenses:
160
+ - GPL-3.0
161
+ metadata: {}
162
+ post_install_message:
163
+ rdoc_options: []
164
+ require_paths:
165
+ - lib
166
+ required_ruby_version: !ruby/object:Gem::Requirement
167
+ requirements:
168
+ - - ">="
169
+ - !ruby/object:Gem::Version
170
+ version: '0'
171
+ required_rubygems_version: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ version: '0'
176
+ requirements: []
177
+ rubyforge_project:
178
+ rubygems_version: 2.5.2
179
+ signing_key:
180
+ specification_version: 4
181
+ summary: A Rails bootstrapper
182
+ test_files: []
183
+ has_rdoc: