semi_static 0.4.3 → 0.4.4
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.
- data/lib/semi_static/controller/page.rb +1 -0
- data/lib/semi_static/page.rb +1 -0
- data/lib/semi_static/version.rb +1 -1
- data/spec/acceptance/page_spec.rb +7 -0
- data/spec/page_spec.rb +2 -0
- metadata +15 -38
@@ -7,6 +7,7 @@ module SemiStatic::Controller::Page
|
|
7
7
|
raise ActionController::RoutingError.new("Invalid Encoded URL") unless params[:id].valid_encoding?
|
8
8
|
@article = resource.find(params[:id])
|
9
9
|
raise ActionController::RoutingError.new(url_for(:id => params[:id], :only_path => true)) unless @article
|
10
|
+
redirect_to @article unless params[:id] == @article.to_param
|
10
11
|
end
|
11
12
|
|
12
13
|
private
|
data/lib/semi_static/page.rb
CHANGED
data/lib/semi_static/version.rb
CHANGED
@@ -16,6 +16,7 @@ feature 'page' do
|
|
16
16
|
|
17
17
|
scenario 'show multibyte bang' do
|
18
18
|
visit "/event_planning_tips/#{CGI.escape("イベントやろう")}"
|
19
|
+
current_path.should == "/event_planning_tips/#{CGI.escape("イベントやろう")}"
|
19
20
|
page.find("h1").text.should == "イベントやろう!"
|
20
21
|
end
|
21
22
|
|
@@ -39,4 +40,10 @@ feature 'page' do
|
|
39
40
|
visit "/event_planning_tips/%8e%8f"
|
40
41
|
page.status_code.should == 404
|
41
42
|
end
|
43
|
+
|
44
|
+
scenario 'redirect in case of double escape' do
|
45
|
+
visit "/event_planning_tips/#{CGI.escape(CGI.escape("イベントやろう"))}"
|
46
|
+
current_path.should == "/event_planning_tips/#{CGI.escape("イベントやろう")}"
|
47
|
+
page.find("h1").text.should == "イベントやろう!"
|
48
|
+
end
|
42
49
|
end
|
data/spec/page_spec.rb
CHANGED
@@ -14,4 +14,6 @@ describe SemiStatic::Page do
|
|
14
14
|
it { @english_page.to_s.should == "foo bar" }
|
15
15
|
it { described_class.new(nil, {}).to_s.should == "" }
|
16
16
|
it { SemiStatic::Page.find("foo-bar").should == @english_page }
|
17
|
+
it { SemiStatic::Page.find("ほげ").should == @japanese_page }
|
18
|
+
it { SemiStatic::Page.find(CGI.escape("ほげ")).should == @japanese_page }
|
17
19
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: semi_static
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-02-
|
12
|
+
date: 2012-02-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
-
requirement: &
|
16
|
+
requirement: &18708200 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '3.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *18708200
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rdiscount
|
27
|
-
requirement: &
|
27
|
+
requirement: &18707340 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *18707340
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: babosa
|
38
|
-
requirement: &
|
38
|
+
requirement: &18706300 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *18706300
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: tilt
|
49
|
-
requirement: &
|
49
|
+
requirement: &18705500 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *18705500
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rspec
|
60
|
-
requirement: &
|
60
|
+
requirement: &18704500 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 2.5.0
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *18704500
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: steak
|
71
|
-
requirement: &
|
71
|
+
requirement: &18703740 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *18703740
|
80
80
|
description: Easily create content for your Rails apps using just textfiles
|
81
81
|
email:
|
82
82
|
- paul@mobalean.com
|
@@ -155,27 +155,4 @@ rubygems_version: 1.8.10
|
|
155
155
|
signing_key:
|
156
156
|
specification_version: 3
|
157
157
|
summary: Text file based CMS for Rails
|
158
|
-
test_files:
|
159
|
-
- spec/acceptance/acceptance_helper.rb
|
160
|
-
- spec/acceptance/custom_controllers_spec.rb
|
161
|
-
- spec/acceptance/fake/app.rb
|
162
|
-
- spec/acceptance/fake/app/controllers/admin/faqs_controller.rb
|
163
|
-
- spec/acceptance/fake/app/controllers/faqs_controller.rb
|
164
|
-
- spec/acceptance/fake/app/models/event_planning_tip.rb
|
165
|
-
- spec/acceptance/fake/app/models/faq.rb
|
166
|
-
- spec/acceptance/fake/app/models/news.rb
|
167
|
-
- spec/acceptance/fake/app/views/application.html.erb
|
168
|
-
- spec/acceptance/fake/semi_static_pages/event_planning_tips/erb_chained.md.erb
|
169
|
-
- spec/acceptance/fake/semi_static_pages/event_planning_tips/erb_page.erb
|
170
|
-
- spec/acceptance/fake/semi_static_pages/event_planning_tips/manner.md
|
171
|
-
- spec/acceptance/fake/semi_static_pages/event_planning_tips/multibyte-bang.md
|
172
|
-
- spec/acceptance/fake/semi_static_pages/event_planning_tips/non_standard_slug.md
|
173
|
-
- spec/acceptance/fake/semi_static_pages/faqs/checkin_devices.md
|
174
|
-
- spec/acceptance/fake/semi_static_pages/news/2011-07-26-replaced-download.md
|
175
|
-
- spec/acceptance/news_spec.rb
|
176
|
-
- spec/acceptance/page_spec.rb
|
177
|
-
- spec/backend_spec.rb
|
178
|
-
- spec/news_spec.rb
|
179
|
-
- spec/page_spec.rb
|
180
|
-
- spec/semi_static_pages/news/2011-07-26-replaced-download.md
|
181
|
-
- spec/spec_helper.rb
|
158
|
+
test_files: []
|