btspm 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.
Files changed (66) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +23 -0
  5. data/app/assets/javascripts/btspm/application.js +13 -0
  6. data/app/assets/stylesheets/btspm/application.css +15 -0
  7. data/app/controllers/btspm/application_controller.rb +4 -0
  8. data/app/helpers/btspm/application_helper.rb +4 -0
  9. data/app/views/layouts/btspm/application.html.erb +14 -0
  10. data/config/routes.rb +2 -0
  11. data/lib/btspm/app_startup.rb +25 -0
  12. data/lib/btspm/eager_loadable.rb +38 -0
  13. data/lib/btspm/engine.rb +9 -0
  14. data/lib/btspm/presenters.rb +85 -0
  15. data/lib/btspm/version.rb +3 -0
  16. data/lib/btspm.rb +4 -0
  17. data/lib/tasks/btspm_tasks.rake +4 -0
  18. data/spec/dummy/README.rdoc +28 -0
  19. data/spec/dummy/Rakefile +6 -0
  20. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  21. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  22. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  23. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  24. data/spec/dummy/app/models/post.rb +5 -0
  25. data/spec/dummy/app/models/user.rb +5 -0
  26. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  27. data/spec/dummy/bin/bundle +3 -0
  28. data/spec/dummy/bin/rails +4 -0
  29. data/spec/dummy/bin/rake +4 -0
  30. data/spec/dummy/config/application.rb +29 -0
  31. data/spec/dummy/config/boot.rb +5 -0
  32. data/spec/dummy/config/database.yml +25 -0
  33. data/spec/dummy/config/env-props.yml +5 -0
  34. data/spec/dummy/config/environment.rb +5 -0
  35. data/spec/dummy/config/environments/development.rb +37 -0
  36. data/spec/dummy/config/environments/production.rb +82 -0
  37. data/spec/dummy/config/environments/test.rb +39 -0
  38. data/spec/dummy/config/initializers/assets.rb +8 -0
  39. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  40. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  41. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  42. data/spec/dummy/config/initializers/inflections.rb +16 -0
  43. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  44. data/spec/dummy/config/initializers/session_store.rb +3 -0
  45. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  46. data/spec/dummy/config/locales/en.yml +23 -0
  47. data/spec/dummy/config/routes.rb +4 -0
  48. data/spec/dummy/config/secrets.yml +22 -0
  49. data/spec/dummy/config.ru +4 -0
  50. data/spec/dummy/db/development.sqlite3 +0 -0
  51. data/spec/dummy/db/migrate/20170825193344_create_users.rb +6 -0
  52. data/spec/dummy/db/migrate/20170825193355_create_posts.rb +7 -0
  53. data/spec/dummy/db/schema.rb +23 -0
  54. data/spec/dummy/db/test.sqlite3 +0 -0
  55. data/spec/dummy/log/development.log +15 -0
  56. data/spec/dummy/log/test.log +557 -0
  57. data/spec/dummy/public/404.html +67 -0
  58. data/spec/dummy/public/422.html +67 -0
  59. data/spec/dummy/public/500.html +66 -0
  60. data/spec/dummy/public/favicon.ico +0 -0
  61. data/spec/fixtures/test-env-props.yml +0 -0
  62. data/spec/lib/app_startup_spec.rb +14 -0
  63. data/spec/lib/eager_loadable_spec.rb +32 -0
  64. data/spec/lib/presenters_spec.rb +144 -0
  65. data/spec/spec_helper.rb +25 -0
  66. metadata +226 -0
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/422.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,66 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>We're sorry, but something went wrong (500)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/500.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>We're sorry, but something went wrong.</h1>
62
+ </div>
63
+ <p>If you are the application owner check the logs for more information.</p>
64
+ </div>
65
+ </body>
66
+ </html>
File without changes
File without changes
@@ -0,0 +1,14 @@
1
+ require 'spec_helper'
2
+ require 'btspm/app_startup'
3
+
4
+ RSpec.describe Btspm::AppStartup do
5
+
6
+ describe '#establish_env_variables_hash' do
7
+ it 'should return hash with env variables' do
8
+ path = 'config/env-props.yml'
9
+ response = Btspm::AppStartup.new(config_file_path: path, environment: Rails.env).establish_env_variables_hash
10
+ expect(response).to include Rails.env => 'Testing Startup Env'
11
+ end
12
+ end
13
+
14
+ end
@@ -0,0 +1,32 @@
1
+ require 'spec_helper'
2
+ require 'btspm/eager_loadable'
3
+
4
+ RSpec.describe Btspm::EagerLoadable do
5
+
6
+ module Btspm
7
+ class Dummy
8
+ end
9
+ end
10
+
11
+ let!(:loader) {Btspm::Dummy.new.extend(Btspm::EagerLoadable)}
12
+
13
+ describe '#eager_load' do
14
+ it 'should return collection with pre-loaded associations for active_record_relation' do
15
+ user = User.create
16
+ user.posts = [Post.create]
17
+
18
+ #Activerecord relation
19
+ record_relation = loader.eager_load(User.where(id: user.id), :posts)
20
+ expect(record_relation.first.association(:posts).loaded?).to be true
21
+
22
+ #Array
23
+ array = loader.eager_load([user], :posts)
24
+ expect(array.first.association(:posts).loaded?).to be true
25
+
26
+ #Single record
27
+ record = loader.eager_load(user, :posts)
28
+ expect(record.association(:posts).loaded?).to be true
29
+ end
30
+ end
31
+
32
+ end
@@ -0,0 +1,144 @@
1
+ require 'spec_helper'
2
+ require 'btspm/presenters'
3
+
4
+ class Test
5
+ attr_accessor :name
6
+
7
+ def initialize(name)
8
+ @name = name
9
+ end
10
+ end
11
+
12
+ class TestsPresenter
13
+ include Btspm::Presenters::Presentable
14
+
15
+ class Scalar < Btspm::Presenters::ScalarPresenter
16
+ def access_view_context
17
+ h.test_method
18
+ end
19
+
20
+ def access_delegated_object
21
+ name
22
+ end
23
+
24
+ def additional_local_param
25
+ @additional_param
26
+ end
27
+ end
28
+
29
+ class Enum < Btspm::Presenters::EnumPresenter
30
+ end
31
+ end
32
+
33
+ class FakeViewContext
34
+ def test_method
35
+ :accessible
36
+ end
37
+ end
38
+
39
+ RSpec.describe TestsPresenter do
40
+
41
+ describe '#TestsPresenter' do
42
+ it 'returns a scalar presenter for non-enumerables' do
43
+ presenter = TestsPresenter.present(Test.new('one'), FakeViewContext.new)
44
+ expect(presenter).to be_a(TestsPresenter::Scalar)
45
+ end
46
+
47
+ it 'returns a enum presenter for enumerables' do
48
+ presenter = TestsPresenter.present([Test.new('one')], FakeViewContext.new)
49
+ expect(presenter).to be_a(TestsPresenter::Enum)
50
+ end
51
+
52
+ it 'enum presenter #each wraps elements in scalar presenter' do
53
+ presenter = TestsPresenter.present([Test.new('one')], FakeViewContext.new)
54
+ expect(presenter.first).to be_a(TestsPresenter::Scalar)
55
+ end
56
+
57
+ it 'knows ActiveRecord::Relations are enumerables too.' do
58
+ presenter = TestsPresenter.present(User.where('1 = 1'), FakeViewContext.new)
59
+ expect(presenter).to be_a(TestsPresenter::Enum)
60
+ end
61
+
62
+ it 'allows access to the view context' do
63
+ presenter = TestsPresenter.present(Test.new('one'), FakeViewContext.new)
64
+ expect(presenter.access_view_context).to eq(:accessible)
65
+ end
66
+
67
+ it 'allows access to delegated object' do
68
+ presenter = TestsPresenter.present(Test.new('one'), FakeViewContext.new)
69
+ expect(presenter.name).to eq('one')
70
+ end
71
+
72
+ it 'can return delegated object' do
73
+ test = Test.new('one')
74
+ presenter = TestsPresenter.present(test, FakeViewContext.new)
75
+ expect(presenter.data_object).to eql(test)
76
+ end
77
+
78
+ it 'allows access to additional local parameters passed into present' do
79
+ locals = {additional_param: 'two'}
80
+ presenter = TestsPresenter.present(Test.new('one'), FakeViewContext.new, locals)
81
+ expect(presenter.additional_local_param).to eql(locals[:additional_param])
82
+ end
83
+
84
+ it 'allows access to additional local parameters for each object in an enumerable' do
85
+ locals = {additional_param: 'three'}
86
+ presenters = TestsPresenter.present([Test.new('one'), Test.new('two')], FakeViewContext.new, locals)
87
+ presenters.each do |presenter|
88
+ expect(presenter.additional_local_param).to eql(locals[:additional_param])
89
+ end
90
+ end
91
+ end
92
+ end
93
+
94
+ class UsersPresenter
95
+ include Btspm::Presenters::Presentable
96
+
97
+ class Scalar < Btspm::Presenters::ScalarPresenter
98
+ end
99
+
100
+ class Enum < Btspm::Presenters::EnumPresenter
101
+ end
102
+ end
103
+
104
+ describe 'present helper method' do
105
+
106
+ it 'is exposed to Rails.' do
107
+ ActionController::Base.instance_methods.include?(:present)
108
+ ActionView::Base.instance_methods.include?(:present)
109
+ end
110
+
111
+ it 'uses the right view context' do
112
+ controller = ActionController::Base.new
113
+ view = controller.view_context
114
+
115
+ presenter = controller.present(Test.new('one'))
116
+ expect(presenter.h).to be_a(ActionView::Base)
117
+
118
+ presenter = view.present(Test.new('one'))
119
+ expect(presenter.h).to be_a(ActionView::Base)
120
+ end
121
+
122
+ it 'infers the correct presenter' do
123
+ controller = ActionController::Base.new
124
+
125
+ presenter = controller.present(Test.new('one'))
126
+ expect(presenter).to be_a(TestsPresenter::Scalar)
127
+
128
+ presenter = controller.present([Test.new('one')])
129
+ expect(presenter).to be_a(TestsPresenter::Enum)
130
+
131
+ presenter = controller.present(User.new)
132
+ expect(presenter).to be_a(UsersPresenter::Scalar)
133
+
134
+ presenter = controller.present(User.where('1 = 1'))
135
+ expect(presenter).to be_a(UsersPresenter::Enum)
136
+ end
137
+
138
+ it 'can override default presenter' do
139
+ controller = ActionController::Base.new
140
+
141
+ presenter = controller.present(Test.new('one'), UsersPresenter)
142
+ expect(presenter).to be_a(UsersPresenter::Scalar)
143
+ end
144
+ end
@@ -0,0 +1,25 @@
1
+ require 'rubygems'
2
+
3
+ ENV['RAILS_ENV'] ||= 'test'
4
+
5
+ require File.expand_path('../dummy/config/environment.rb', __FILE__)
6
+ require 'rspec/rails'
7
+
8
+ Rails.backtrace_cleaner.remove_silencers!
9
+ # Load spec_support files
10
+ Dir["#{File.dirname(__FILE__)}/spec_support/**/*.rb"].each { |f| require f }
11
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
12
+
13
+ RSpec.configure do |config|
14
+ config.mock_with :rspec
15
+ config.use_transactional_fixtures = true
16
+ config.infer_base_class_for_anonymous_controllers = false
17
+ config.infer_spec_type_from_file_location!
18
+ config.order = 'random'
19
+ end
20
+
21
+ require 'btspm/app_startup'
22
+
23
+ ENV_PROPS = Btspm::AppStartup.new(config_file_path: ("#{File.dirname(__FILE__)}/dummy/config/env-props.yml"), environment: Rails.env).establish_env_variables_hash
24
+
25
+
metadata ADDED
@@ -0,0 +1,226 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: btspm
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - bTspm
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-08-26 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.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 4.2.2
27
+ - !ruby/object:Gem::Dependency
28
+ name: sqlite3
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec-rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: tzinfo-data
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: simplecov
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description: Currently has presenters and eager_loads
84
+ email:
85
+ - bTspm10@gmail.com
86
+ executables: []
87
+ extensions: []
88
+ extra_rdoc_files: []
89
+ files:
90
+ - MIT-LICENSE
91
+ - README.rdoc
92
+ - Rakefile
93
+ - app/assets/javascripts/btspm/application.js
94
+ - app/assets/stylesheets/btspm/application.css
95
+ - app/controllers/btspm/application_controller.rb
96
+ - app/helpers/btspm/application_helper.rb
97
+ - app/views/layouts/btspm/application.html.erb
98
+ - config/routes.rb
99
+ - lib/btspm.rb
100
+ - lib/btspm/app_startup.rb
101
+ - lib/btspm/eager_loadable.rb
102
+ - lib/btspm/engine.rb
103
+ - lib/btspm/presenters.rb
104
+ - lib/btspm/version.rb
105
+ - lib/tasks/btspm_tasks.rake
106
+ - spec/dummy/README.rdoc
107
+ - spec/dummy/Rakefile
108
+ - spec/dummy/app/assets/javascripts/application.js
109
+ - spec/dummy/app/assets/stylesheets/application.css
110
+ - spec/dummy/app/controllers/application_controller.rb
111
+ - spec/dummy/app/helpers/application_helper.rb
112
+ - spec/dummy/app/models/post.rb
113
+ - spec/dummy/app/models/user.rb
114
+ - spec/dummy/app/views/layouts/application.html.erb
115
+ - spec/dummy/bin/bundle
116
+ - spec/dummy/bin/rails
117
+ - spec/dummy/bin/rake
118
+ - spec/dummy/config.ru
119
+ - spec/dummy/config/application.rb
120
+ - spec/dummy/config/boot.rb
121
+ - spec/dummy/config/database.yml
122
+ - spec/dummy/config/env-props.yml
123
+ - spec/dummy/config/environment.rb
124
+ - spec/dummy/config/environments/development.rb
125
+ - spec/dummy/config/environments/production.rb
126
+ - spec/dummy/config/environments/test.rb
127
+ - spec/dummy/config/initializers/assets.rb
128
+ - spec/dummy/config/initializers/backtrace_silencers.rb
129
+ - spec/dummy/config/initializers/cookies_serializer.rb
130
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
131
+ - spec/dummy/config/initializers/inflections.rb
132
+ - spec/dummy/config/initializers/mime_types.rb
133
+ - spec/dummy/config/initializers/session_store.rb
134
+ - spec/dummy/config/initializers/wrap_parameters.rb
135
+ - spec/dummy/config/locales/en.yml
136
+ - spec/dummy/config/routes.rb
137
+ - spec/dummy/config/secrets.yml
138
+ - spec/dummy/db/development.sqlite3
139
+ - spec/dummy/db/migrate/20170825193344_create_users.rb
140
+ - spec/dummy/db/migrate/20170825193355_create_posts.rb
141
+ - spec/dummy/db/schema.rb
142
+ - spec/dummy/db/test.sqlite3
143
+ - spec/dummy/log/development.log
144
+ - spec/dummy/log/test.log
145
+ - spec/dummy/public/404.html
146
+ - spec/dummy/public/422.html
147
+ - spec/dummy/public/500.html
148
+ - spec/dummy/public/favicon.ico
149
+ - spec/fixtures/test-env-props.yml
150
+ - spec/lib/app_startup_spec.rb
151
+ - spec/lib/eager_loadable_spec.rb
152
+ - spec/lib/presenters_spec.rb
153
+ - spec/spec_helper.rb
154
+ homepage:
155
+ licenses:
156
+ - MIT
157
+ metadata: {}
158
+ post_install_message:
159
+ rdoc_options: []
160
+ require_paths:
161
+ - lib
162
+ required_ruby_version: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ required_rubygems_version: !ruby/object:Gem::Requirement
168
+ requirements:
169
+ - - ">="
170
+ - !ruby/object:Gem::Version
171
+ version: '0'
172
+ requirements: []
173
+ rubyforge_project:
174
+ rubygems_version: 2.5.2
175
+ signing_key:
176
+ specification_version: 4
177
+ summary: Btspm gem
178
+ test_files:
179
+ - spec/dummy/app/assets/javascripts/application.js
180
+ - spec/dummy/app/assets/stylesheets/application.css
181
+ - spec/dummy/app/controllers/application_controller.rb
182
+ - spec/dummy/app/helpers/application_helper.rb
183
+ - spec/dummy/app/models/post.rb
184
+ - spec/dummy/app/models/user.rb
185
+ - spec/dummy/app/views/layouts/application.html.erb
186
+ - spec/dummy/bin/bundle
187
+ - spec/dummy/bin/rails
188
+ - spec/dummy/bin/rake
189
+ - spec/dummy/config/application.rb
190
+ - spec/dummy/config/boot.rb
191
+ - spec/dummy/config/database.yml
192
+ - spec/dummy/config/env-props.yml
193
+ - spec/dummy/config/environment.rb
194
+ - spec/dummy/config/environments/development.rb
195
+ - spec/dummy/config/environments/production.rb
196
+ - spec/dummy/config/environments/test.rb
197
+ - spec/dummy/config/initializers/assets.rb
198
+ - spec/dummy/config/initializers/backtrace_silencers.rb
199
+ - spec/dummy/config/initializers/cookies_serializer.rb
200
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
201
+ - spec/dummy/config/initializers/inflections.rb
202
+ - spec/dummy/config/initializers/mime_types.rb
203
+ - spec/dummy/config/initializers/session_store.rb
204
+ - spec/dummy/config/initializers/wrap_parameters.rb
205
+ - spec/dummy/config/locales/en.yml
206
+ - spec/dummy/config/routes.rb
207
+ - spec/dummy/config/secrets.yml
208
+ - spec/dummy/config.ru
209
+ - spec/dummy/db/development.sqlite3
210
+ - spec/dummy/db/migrate/20170825193344_create_users.rb
211
+ - spec/dummy/db/migrate/20170825193355_create_posts.rb
212
+ - spec/dummy/db/schema.rb
213
+ - spec/dummy/db/test.sqlite3
214
+ - spec/dummy/log/development.log
215
+ - spec/dummy/log/test.log
216
+ - spec/dummy/public/404.html
217
+ - spec/dummy/public/422.html
218
+ - spec/dummy/public/500.html
219
+ - spec/dummy/public/favicon.ico
220
+ - spec/dummy/Rakefile
221
+ - spec/dummy/README.rdoc
222
+ - spec/fixtures/test-env-props.yml
223
+ - spec/lib/app_startup_spec.rb
224
+ - spec/lib/eager_loadable_spec.rb
225
+ - spec/lib/presenters_spec.rb
226
+ - spec/spec_helper.rb