sitepress-rails 0.1.26 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -4,43 +4,45 @@ require "sitepress-rails"
4
4
  describe "Sitepress.configuration" do
5
5
  subject { Sitepress.configuration }
6
6
  let(:app) { Dummy::Application.new }
7
- let(:cache_classes) { true }
7
+ let(:cache_classes) { false }
8
8
  before do
9
9
  app.config.eager_load = cache_classes # WTF?
10
- app.config.cache_classes = cache_classes # This is what I really want to test.
11
- app.initialize!
12
10
  end
13
11
  it "has site" do
12
+ app.initialize!
14
13
  expect(subject.site.root_path).to eql(app.root.join("app/content"))
15
14
  end
16
15
  it "has Rails.application as parent engine" do
16
+ app.initialize!
17
17
  expect(subject.parent_engine).to eql(app)
18
18
  end
19
19
  it "has Rails.application as parent engine" do
20
- expect(subject.cache_resources).to be true
20
+ app.initialize!
21
+ expect(subject.cache_resources).to be_nil
21
22
  end
22
23
  it "has routes enabled by default" do
24
+ app.initialize!
23
25
  expect(subject.routes).to be true
24
26
  end
25
27
  context "#cache_resources" do
28
+ before do
29
+ app.config.cache_classes = cache_classes # This is what I really want to test.
30
+ end
26
31
  context "Rails.configuration.cache_classes=true" do
27
32
  let(:cache_classes) { true }
28
33
  it "is true" do
34
+ app.initialize!
29
35
  expect(subject.cache_resources).to eql(true)
30
36
  end
31
37
  end
32
38
  context "Rails.configuration.cache_classes=false" do
33
39
  let(:cache_classes) { false }
34
40
  it "is false" do
41
+ app.initialize!
35
42
  expect(subject.cache_resources).to eql(false)
36
43
  end
37
44
  end
38
45
  end
39
- context "Sitepress::Middleware::RequestCache" do
40
- it "is in Rails middleware stack" do
41
- expect(app.config.middleware).to include(Sitepress::Middleware::RequestCache)
42
- end
43
- end
44
46
  context "Rails.configuration.paths" do
45
47
  subject { Rails.configuration.paths[path].to_a }
46
48
  context "views" do
@@ -1,9 +1,18 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe Sitepress::SiteController, type: :controller do
4
+ # Rails 5 introduces a new format of calling the `get` rspec helper method.
5
+ def get_resource(path)
6
+ if Gem::Version.new(Rails.version) >= Gem::Version.new("5.0.0")
7
+ get :show, params: { resource_path: path }
8
+ else
9
+ get :show, resource_path: path
10
+ end
11
+ end
12
+
4
13
  context "templated page" do
5
14
  render_views
6
- before { get :show, resource_path: "/time" }
15
+ before { get_resource "/time" }
7
16
  let(:resource) { Sitepress.site.get("/time") }
8
17
  it "is status 200" do
9
18
  expect(response.status).to eql(200)
@@ -30,7 +39,7 @@ describe Sitepress::SiteController, type: :controller do
30
39
 
31
40
  context "static page" do
32
41
  render_views
33
- before { get :show, resource_path: "/hi" }
42
+ before { get_resource "/hi" }
34
43
  it "is status 200" do
35
44
  expect(response.status).to eql(200)
36
45
  end
@@ -48,8 +57,32 @@ describe Sitepress::SiteController, type: :controller do
48
57
  context "non-existent page" do
49
58
  it "is status 404" do
50
59
  expect {
51
- get :show, resource_path: "/non-existent"
60
+ get_resource "/non-existent"
52
61
  }.to raise_exception(ActionController::RoutingError)
53
62
  end
54
63
  end
64
+
65
+ context "render cache" do
66
+ context "cache_resources=true" do
67
+ before { Sitepress.site.cache_resources = true }
68
+ it "enables cache" do
69
+ expect(Sitepress.site.cache_resources).to be true
70
+ expect(Sitepress.site).to receive(:cache_resources=).with(true)
71
+ expect(Sitepress.site).to receive(:cache_resources=).with(true)
72
+ get_resource "/time"
73
+ expect(Sitepress.site.cache_resources).to be true
74
+ end
75
+ end
76
+ context "cache_resources=false" do
77
+ before { Sitepress.site.cache_resources = false }
78
+ it "enables cache" do
79
+ expect(Sitepress.site.cache_resources).to be false
80
+ expect(Sitepress.site).to receive(:cache_resources=).with(true)
81
+ expect(Sitepress.site).to receive(:cache_resources=).with(false)
82
+ get_resource "/time"
83
+ expect(Sitepress.site.cache_resources).to be false
84
+ end
85
+ end
86
+
87
+ end
55
88
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sitepress-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.26
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brad Gessler
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-06 00:00:00.000000000 Z
11
+ date: 2020-10-22 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: sqlite3
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: rspec-rails
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -56,14 +42,14 @@ dependencies:
56
42
  name: rails
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
- - - "~>"
45
+ - - ">="
60
46
  - !ruby/object:Gem::Version
61
47
  version: '4.0'
62
48
  type: :runtime
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
- - - "~>"
52
+ - - ">="
67
53
  - !ruby/object:Gem::Version
68
54
  version: '4.0'
69
55
  - !ruby/object:Gem::Dependency
@@ -72,14 +58,14 @@ dependencies:
72
58
  requirements:
73
59
  - - '='
74
60
  - !ruby/object:Gem::Version
75
- version: 0.1.26
61
+ version: 1.0.1
76
62
  type: :runtime
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
66
  - - '='
81
67
  - !ruby/object:Gem::Version
82
- version: 0.1.26
68
+ version: 1.0.1
83
69
  description:
84
70
  email:
85
71
  - bradgessler@gmail.com
@@ -100,6 +86,7 @@ files:
100
86
  - lib/sitepress/extensions/rails_request_paths.rb
101
87
  - lib/sitepress/rails.rb
102
88
  - lib/sitepress/rails_configuration.rb
89
+ - lib/sitepress/rails_configuration.rb.orig
103
90
  - lib/sitepress/route_constraint.rb
104
91
  - lib/tasks/sitepress_tasks.rake
105
92
  - spec/dummy/Rakefile
@@ -118,7 +105,6 @@ files:
118
105
  - spec/dummy/app/helpers/application_helper.rb
119
106
  - spec/dummy/app/jobs/application_job.rb
120
107
  - spec/dummy/app/mailers/application_mailer.rb
121
- - spec/dummy/app/models/application_record.rb
122
108
  - spec/dummy/app/views/baseline/show.html.erb
123
109
  - spec/dummy/app/views/layouts/application.html.erb
124
110
  - spec/dummy/app/views/layouts/mailer.html.erb
@@ -195,84 +181,82 @@ required_rubygems_version: !ruby/object:Gem::Requirement
195
181
  - !ruby/object:Gem::Version
196
182
  version: '0'
197
183
  requirements: []
198
- rubyforge_project:
199
- rubygems_version: 2.5.2
184
+ rubygems_version: 3.1.2
200
185
  signing_key:
201
186
  specification_version: 4
202
187
  summary: Sitepress rails integration.
203
188
  test_files:
204
- - spec/dummy/app/assets/config/manifest.js
205
- - spec/dummy/app/assets/javascripts/application.js
206
- - spec/dummy/app/assets/javascripts/cable.js
207
- - spec/dummy/app/assets/stylesheets/application.css
208
- - spec/dummy/app/content/helpers/sample_helper.rb
189
+ - spec/spec_helper.rb
190
+ - spec/sitepress-rails_spec.rb
191
+ - spec/dummy/app/mailers/application_mailer.rb
209
192
  - spec/dummy/app/content/layouts/sitepress_test_layout.html.erb
193
+ - spec/dummy/app/content/pages/time.html.erb
210
194
  - spec/dummy/app/content/pages/_stupid.html.erb
211
195
  - spec/dummy/app/content/pages/hi.html
212
196
  - spec/dummy/app/content/pages/partials/_really_stupid.html.erb
213
- - spec/dummy/app/content/pages/time.html.erb
197
+ - spec/dummy/app/content/helpers/sample_helper.rb
198
+ - spec/dummy/app/jobs/application_job.rb
214
199
  - spec/dummy/app/controllers/application_controller.rb
215
200
  - spec/dummy/app/controllers/baseline_controller.rb
216
- - spec/dummy/app/helpers/application_helper.rb
217
- - spec/dummy/app/jobs/application_job.rb
218
- - spec/dummy/app/mailers/application_mailer.rb
219
- - spec/dummy/app/models/application_record.rb
220
201
  - spec/dummy/app/views/baseline/show.html.erb
221
202
  - spec/dummy/app/views/layouts/application.html.erb
222
203
  - spec/dummy/app/views/layouts/mailer.html.erb
223
204
  - spec/dummy/app/views/layouts/mailer.text.erb
224
- - spec/dummy/bin/bundle
225
- - spec/dummy/bin/rails
205
+ - spec/dummy/app/assets/config/manifest.js
206
+ - spec/dummy/app/assets/javascripts/cable.js
207
+ - spec/dummy/app/assets/javascripts/application.js
208
+ - spec/dummy/app/assets/stylesheets/application.css
209
+ - spec/dummy/app/helpers/application_helper.rb
210
+ - spec/dummy/bin/update
226
211
  - spec/dummy/bin/rake
227
212
  - spec/dummy/bin/setup
228
- - spec/dummy/bin/update
229
- - spec/dummy/config/application.rb
230
- - spec/dummy/config/boot.rb
213
+ - spec/dummy/bin/bundle
214
+ - spec/dummy/bin/rails
215
+ - spec/dummy/config/secrets.yml
216
+ - spec/dummy/config/routes.rb
217
+ - spec/dummy/config/locales/en.yml
231
218
  - spec/dummy/config/cable.yml
232
- - spec/dummy/config/database.yml
233
- - spec/dummy/config/environment.rb
234
- - spec/dummy/config/environments/development.rb
235
219
  - spec/dummy/config/environments/production.rb
220
+ - spec/dummy/config/environments/development.rb
236
221
  - spec/dummy/config/environments/test.rb
222
+ - spec/dummy/config/spring.rb
223
+ - spec/dummy/config/environment.rb
224
+ - spec/dummy/config/application.rb
225
+ - spec/dummy/config/puma.rb
226
+ - spec/dummy/config/database.yml
227
+ - spec/dummy/config/boot.rb
237
228
  - spec/dummy/config/initializers/application_controller_renderer.rb
238
- - spec/dummy/config/initializers/assets.rb
239
229
  - spec/dummy/config/initializers/backtrace_silencers.rb
240
- - spec/dummy/config/initializers/cookies_serializer.rb
241
- - spec/dummy/config/initializers/filter_parameter_logging.rb
242
- - spec/dummy/config/initializers/inflections.rb
243
- - spec/dummy/config/initializers/mime_types.rb
244
230
  - spec/dummy/config/initializers/null_logger.rb
231
+ - spec/dummy/config/initializers/mime_types.rb
232
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
245
233
  - spec/dummy/config/initializers/session_store.rb
246
234
  - spec/dummy/config/initializers/wrap_parameters.rb
247
- - spec/dummy/config/locales/en.yml
248
- - spec/dummy/config/puma.rb
249
- - spec/dummy/config/routes.rb
250
- - spec/dummy/config/secrets.yml
251
- - spec/dummy/config/spring.rb
235
+ - spec/dummy/config/initializers/assets.rb
236
+ - spec/dummy/config/initializers/cookies_serializer.rb
237
+ - spec/dummy/config/initializers/inflections.rb
252
238
  - spec/dummy/config.ru
253
- - spec/dummy/db/production.sqlite3
254
- - spec/dummy/db/test.sqlite3
255
- - spec/dummy/log/production.log
256
- - spec/dummy/log/test.log
257
- - spec/dummy/public/404.html
239
+ - spec/dummy/Rakefile
240
+ - spec/dummy/public/favicon.ico
258
241
  - spec/dummy/public/422.html
242
+ - spec/dummy/public/apple-touch-icon.png
259
243
  - spec/dummy/public/500.html
244
+ - spec/dummy/public/404.html
260
245
  - spec/dummy/public/apple-touch-icon-precomposed.png
261
- - spec/dummy/public/apple-touch-icon.png
262
- - spec/dummy/public/favicon.ico
263
- - spec/dummy/Rakefile
264
- - spec/sitepress/extensions/index_request_path_spec.rb
265
- - spec/sitepress/extensions/partials_remover_spec.rb
266
- - spec/sitepress/extensions/rails_request_paths_spec.rb
267
- - spec/sitepress/rails_configuration_spec.rb
268
- - spec/sitepress/route_constraint_spec.rb
269
- - spec/sitepress/routes_spec.rb
270
- - spec/sitepress/sitepress_site_controller_spec.rb
271
- - spec/sitepress-rails_spec.rb
246
+ - spec/dummy/db/production.sqlite3
247
+ - spec/dummy/db/test.sqlite3
248
+ - spec/dummy/log/test.log
249
+ - spec/dummy/log/production.log
272
250
  - spec/sites/sample/pages/index.html.erb
273
- - spec/sites/sample/pages/nothing
251
+ - spec/sites/sample/pages/test.html.haml
274
252
  - spec/sites/sample/pages/sin_frontmatter.html.haml
275
253
  - spec/sites/sample/pages/super.duper/index.html
276
- - spec/sites/sample/pages/test.html.haml
254
+ - spec/sites/sample/pages/nothing
277
255
  - spec/sites/sample/pages/text.txt
278
- - spec/spec_helper.rb
256
+ - spec/sitepress/extensions/rails_request_paths_spec.rb
257
+ - spec/sitepress/extensions/partials_remover_spec.rb
258
+ - spec/sitepress/extensions/index_request_path_spec.rb
259
+ - spec/sitepress/sitepress_site_controller_spec.rb
260
+ - spec/sitepress/rails_configuration_spec.rb
261
+ - spec/sitepress/routes_spec.rb
262
+ - spec/sitepress/route_constraint_spec.rb
@@ -1,3 +0,0 @@
1
- class ApplicationRecord < ActiveRecord::Base
2
- self.abstract_class = true
3
- end