caterpillar 1.4.4 → 1.6.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +9 -0
- data/ChangeLog +27 -0
- data/MIT-LICENSE +0 -4
- data/README.rdoc +3 -3
- data/Rakefile +6 -22
- data/caterpillar.gemspec +28 -0
- data/generators/caterpillar/caterpillar_generator.rb +12 -4
- data/generators/caterpillar/templates/config/portlets.rb +10 -2
- data/generators/caterpillar/templates/stylesheets/portlet_test_bench/main.css +2 -2
- data/init.rb +20 -8
- data/lib/caterpillar.rb +33 -27
- data/lib/caterpillar/config.rb +3 -1
- data/lib/caterpillar/helpers/liferay.rb +129 -132
- data/lib/caterpillar/helpers/portlet.rb +41 -0
- data/lib/caterpillar/liferay.rb +2 -3
- data/lib/caterpillar/navigation.rb +2 -4
- data/lib/caterpillar/parser.rb +1 -5
- data/lib/caterpillar/portlet.rb +20 -19
- data/lib/caterpillar/portlet_support.rb +9 -22
- data/lib/caterpillar/security.rb +20 -42
- data/lib/caterpillar/task.rb +17 -36
- data/lib/caterpillar/usage.rb +14 -10
- data/lib/caterpillar/util.rb +1 -1
- data/lib/java/rails-portlet-0.12.0.jar +0 -0
- data/lib/rails_gem_chooser.rb +14 -7
- data/lib/web/portlet.rb +1 -1
- data/portlet_test_bench/controllers/caterpillar/application.rb +0 -5
- data/portlet_test_bench/controllers/caterpillar/junit_controller.rb +30 -9
- data/portlet_test_bench/controllers/caterpillar/liferay_controller.rb +13 -3
- data/portlet_test_bench/controllers/caterpillar/session_controller.rb +3 -0
- data/portlet_test_bench/controllers/caterpillar/xhr_controller.rb +12 -1
- data/portlet_test_bench/views/caterpillar/application/_back_to_menu.html.erb +1 -1
- data/portlet_test_bench/views/caterpillar/application/index.html.erb +8 -1
- data/portlet_test_bench/views/caterpillar/application/portlet_test_bench.html.erb +26 -8
- data/portlet_test_bench/views/caterpillar/css/background.html.erb +4 -1
- data/portlet_test_bench/views/caterpillar/css/simple.html.erb +13 -9
- data/portlet_test_bench/views/caterpillar/liferay/session_variables.html.erb +3 -12
- data/portlet_test_bench/views/caterpillar/session/cookies.html.erb +5 -0
- data/portlet_test_bench/views/caterpillar/session/namespace.html.erb +14 -0
- data/portlet_test_bench/views/caterpillar/xhr/resource.html.erb +15 -0
- data/portlet_test_bench/views/caterpillar/xhr/time.html.erb +7 -6
- data/spec/app1/config/routes.rb +3 -0
- data/spec/app2/config/routes.rb +7 -0
- data/spec/app3/config/routes.rb +5 -0
- data/spec/caterpillar/helper_spec.rb +69 -0
- data/spec/caterpillar/task_spec.rb +192 -0
- data/spec/spec.opts +5 -0
- data/spec/spec_helper.rb +44 -0
- data/test/README +4 -0
- data/test/dtd/liferay-display_5_1_0.dtd +44 -44
- data/test/dtd/liferay-display_5_2_0.dtd +44 -44
- data/test/dtd/liferay-display_6_0_0.dtd +44 -44
- data/test/dtd/liferay-portlet-app_5_1_0.dtd +582 -582
- data/test/dtd/liferay-portlet-app_5_2_0.dtd +642 -642
- data/test/dtd/liferay-portlet-app_6_0_0.dtd +730 -730
- data/test/dtd/portlet-app_2_0.xsd +830 -830
- data/test/liferay_helpers_test.rb +94 -7
- data/test/portlet_support_test.rb +0 -18
- data/test/portlets_test.rb +6 -11
- data/test/xml_test.rb +4 -14
- metadata +53 -31
- data/lib/java/rails-portlet-0.10.1.jar +0 -0
@@ -6,11 +6,98 @@ require File.dirname(File.expand_path(__FILE__))+'/test_helper'
|
|
6
6
|
|
7
7
|
class LiferayHelpersTest < ActionController::TestCase # :nodoc:
|
8
8
|
include Caterpillar::Helpers::Liferay
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
#
|
13
|
-
|
9
|
+
|
10
|
+
|
11
|
+
def test_get_liferay_preferences
|
12
|
+
# Simulated value from the cookie sent
|
13
|
+
value = "font_size=20px;background_color=#000000;page_size=20;"
|
14
|
+
|
15
|
+
hash = get_liferay_preferences(value)
|
16
|
+
assert_not_nil hash
|
17
|
+
assert_equal 3, hash.length
|
18
|
+
[:font_size, :background_color, :page_size].each do |key|
|
19
|
+
hash.has_key? key
|
20
|
+
end
|
21
|
+
|
22
|
+
["20px", "#000000", "20"].each do |value|
|
23
|
+
hash.has_value? value
|
24
|
+
end
|
25
|
+
|
26
|
+
assert_nil get_liferay_preferences(nil)
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_liferay_ResourceUrl_model
|
30
|
+
resource_url_cookie = "http://localhost:8080/web/guest/test?p_p_id=portlet_test_bench&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_cacheability=cacheLevelPage&p_p_col_id=column-2&p_p_col_count=1&_portlet_test_bench_railsRoute=caterpillar/test_bench/xhr/resource"
|
31
|
+
|
32
|
+
asserted_path = "http://localhost:8080/web/guest/test"
|
33
|
+
asserted_params = %w{
|
34
|
+
p_p_id=portlet_test_bench
|
35
|
+
p_p_lifecycle=2
|
36
|
+
p_p_state=normal
|
37
|
+
p_p_mode=view
|
38
|
+
p_p_cacheability=cacheLevelPage
|
39
|
+
p_p_col_id=column-2
|
40
|
+
p_p_col_count=1
|
41
|
+
_portlet_test_bench_railsRoute=caterpillar/test_bench/xhr/resource
|
42
|
+
}
|
43
|
+
|
44
|
+
#options = {
|
45
|
+
# :controller => 'Caterpillar::XhrController',
|
46
|
+
# :action => :resource
|
47
|
+
#}
|
48
|
+
#url_for in ResourceUrl can't handle modularized controllers, use explicit route as workaround
|
49
|
+
options = { :route => 'caterpillar/test_bench/xhr/resource' }
|
50
|
+
namespace = 'portlet_test_bench'
|
51
|
+
|
52
|
+
res = Caterpillar::Helpers::Liferay::ResourceUrl.new(
|
53
|
+
resource_url_cookie, namespace)
|
54
|
+
res.options = options
|
55
|
+
|
56
|
+
path, _params = res.to_s.split('?')
|
57
|
+
assert_equal path, asserted_path
|
58
|
+
|
59
|
+
params = _params.split('&')
|
60
|
+
assert_equal 8, params.size
|
61
|
+
asserted_params.each do |param|
|
62
|
+
assert params.include? param
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
def test_liferay_ResourceUrl_model_with_params
|
67
|
+
resource_url_cookie = 'http://localhost:8080/web/guest/test?p_p_id=portlet_test_bench&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_cacheability=cacheLevelPage&p_p_col_id=column-2&p_p_col_count=1&_portlet_test_bench_railsRoute=caterpillar/test_bench/xhr/resource'
|
68
|
+
asserted_path = "http://localhost:8080/web/guest/test"
|
69
|
+
asserted_params = %w{
|
70
|
+
p_p_id=portlet_test_bench
|
71
|
+
p_p_lifecycle=2
|
72
|
+
p_p_state=normal
|
73
|
+
p_p_mode=view
|
74
|
+
p_p_cacheability=cacheLevelPage
|
75
|
+
p_p_col_id=column-2
|
76
|
+
p_p_col_count=1
|
77
|
+
_portlet_test_bench_railsRoute=caterpillar/test_bench/xhr/index
|
78
|
+
_portlet_test_bench_foo=bar
|
79
|
+
}
|
80
|
+
# test that _portlet_test_bench_railsRoute was updated
|
81
|
+
# and _portlet_test_bench_foo was inserted
|
82
|
+
|
83
|
+
#url_for in ResourceUrl can't handle modularized controllers..
|
84
|
+
options = { :route => 'caterpillar/test_bench/xhr/index' }
|
85
|
+
portlet_params = {:foo => :bar}
|
86
|
+
namespace = 'portlet_test_bench'
|
87
|
+
|
88
|
+
res = Caterpillar::Helpers::Liferay::ResourceUrl.new(
|
89
|
+
resource_url_cookie, namespace)
|
90
|
+
res.options = options
|
91
|
+
res.params = portlet_params
|
92
|
+
|
93
|
+
path, _params = res.to_s.split('?')
|
94
|
+
assert_equal path, asserted_path
|
95
|
+
|
96
|
+
params = _params.split('&')
|
97
|
+
assert_equal 9, params.size
|
98
|
+
asserted_params.each do |param|
|
99
|
+
assert params.include?(param), 'missing parameter: '+param
|
100
|
+
end
|
14
101
|
end
|
15
102
|
|
16
103
|
def test_liferay_resource_url
|
@@ -25,7 +112,7 @@ class LiferayHelpersTest < ActionController::TestCase # :nodoc:
|
|
25
112
|
# expected behavior
|
26
113
|
url = liferay_resource_url(params, resource_url)
|
27
114
|
assert_not_nil url
|
28
|
-
assert_equal "#{resource_url}
|
115
|
+
assert_equal "#{resource_url}?__railsRoute=/c1/a1", url
|
29
116
|
|
30
117
|
params = {
|
31
118
|
:controller => :c1
|
@@ -34,7 +121,7 @@ class LiferayHelpersTest < ActionController::TestCase # :nodoc:
|
|
34
121
|
# expected behavior without :action param
|
35
122
|
url = liferay_resource_url(params, resource_url)
|
36
123
|
assert_not_nil url
|
37
|
-
assert_equal "#{resource_url}
|
124
|
+
assert_equal "#{resource_url}?__railsRoute=/c1", url
|
38
125
|
|
39
126
|
# expected behavior without :controller
|
40
127
|
params = {}
|
@@ -4,22 +4,4 @@ require File.dirname(File.expand_path(__FILE__))+'/test_helper'
|
|
4
4
|
class PortletSupportTest < ActionController::TestCase # :nodoc:
|
5
5
|
include Caterpillar::PortletSupport
|
6
6
|
|
7
|
-
def test_get_liferay_preferences
|
8
|
-
# Simulated value from the cookie sent
|
9
|
-
value = "font_size=20px;background_color=#000000;page_size=20;"
|
10
|
-
|
11
|
-
hash = get_liferay_preferences(value)
|
12
|
-
assert_not_nil hash
|
13
|
-
assert_equal 3, hash.length
|
14
|
-
[:font_size, :background_color, :page_size].each do |key|
|
15
|
-
hash.has_key? key
|
16
|
-
end
|
17
|
-
|
18
|
-
["20px", "#000000", "20"].each do |value|
|
19
|
-
hash.has_value? value
|
20
|
-
end
|
21
|
-
|
22
|
-
assert_nil get_liferay_preferences(nil)
|
23
|
-
end
|
24
|
-
|
25
7
|
end
|
data/test/portlets_test.rb
CHANGED
@@ -6,20 +6,15 @@ require File.dirname(File.expand_path(__FILE__))+'/test_helper'
|
|
6
6
|
|
7
7
|
class PortletsTest < Caterpillar::TestCase # :nodoc:
|
8
8
|
|
9
|
-
# def test_get
|
10
|
-
# @portlets.each do |portlet|
|
11
|
-
# next if portlet[:reqs].empty?
|
12
|
-
# @controller = portlet[:reqs][:controller]
|
13
|
-
# action = portlet[:reqs][:action]
|
14
|
-
# get action
|
15
|
-
# end
|
16
|
-
# end
|
17
|
-
|
18
9
|
def test_session
|
19
|
-
|
10
|
+
assert_not_nil @config.session_secret, 'No session secret in portlets.rb config'
|
11
|
+
|
12
|
+
key = @config.session_secret[:key]
|
20
13
|
assert_not_nil key
|
21
|
-
secret =
|
14
|
+
secret = @config.session_secret[:secret]
|
22
15
|
assert_not_nil secret
|
16
|
+
assert_not_equal 'somereallylongrandomkey', secret,
|
17
|
+
'Please generate your private random shared secret!'
|
23
18
|
end
|
24
19
|
|
25
20
|
def test_name
|
data/test/xml_test.rb
CHANGED
@@ -28,7 +28,7 @@ class XmlTest < Caterpillar::TestCase # :nodoc:
|
|
28
28
|
:path => "/test/path"
|
29
29
|
}
|
30
30
|
|
31
|
-
|
31
|
+
session_secret = {
|
32
32
|
:key => '_test_session',
|
33
33
|
:secret => 'XXX'
|
34
34
|
}
|
@@ -38,26 +38,16 @@ class XmlTest < Caterpillar::TestCase # :nodoc:
|
|
38
38
|
assert xml[/#{portlet[:title]}/]
|
39
39
|
assert !xml[/secret/]
|
40
40
|
|
41
|
-
xml = Caterpillar::Portlet.portlet_element(portlet,
|
42
|
-
assert xml[/#{
|
41
|
+
xml = Caterpillar::Portlet.portlet_element(portlet,session_secret).to_s
|
42
|
+
assert xml[/#{session_secret[:secret]}/], 'No secret'
|
43
43
|
|
44
44
|
xml = Caterpillar::Portlet.filter_element(portlet).to_s
|
45
45
|
assert xml[/#{portlet[:servlet]}/]
|
46
46
|
assert xml[/#{portlet[:path]}/]
|
47
47
|
end
|
48
48
|
|
49
|
-
def test_session_key
|
50
|
-
key = Caterpillar::Security.get_session_key
|
51
|
-
assert_not_nil key
|
52
|
-
end
|
53
|
-
|
54
|
-
def test_secret
|
55
|
-
secret = Caterpillar::Security.get_secret
|
56
|
-
assert_not_nil secret
|
57
|
-
end
|
58
|
-
|
59
49
|
def test_portlet_xml
|
60
|
-
xml = Caterpillar::Portlet.xml(@portlets)
|
50
|
+
xml = Caterpillar::Portlet.xml(@portlets,{})
|
61
51
|
|
62
52
|
# parse xml document
|
63
53
|
doc = LibXML::XML::Parser.string(xml).parse
|
metadata
CHANGED
@@ -5,9 +5,9 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 1.
|
8
|
+
- 6
|
9
|
+
- 0
|
10
|
+
version: 1.6.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Mikael Lammentausta
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2011-06-08 00:00:00 +03:00
|
19
19
|
default_executable: caterpillar
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -56,12 +56,10 @@ dependencies:
|
|
56
56
|
requirements:
|
57
57
|
- - ">="
|
58
58
|
- !ruby/object:Gem::Version
|
59
|
-
hash:
|
59
|
+
hash: 3
|
60
60
|
segments:
|
61
61
|
- 0
|
62
|
-
|
63
|
-
- 3
|
64
|
-
version: 0.7.3
|
62
|
+
version: "0"
|
65
63
|
type: :runtime
|
66
64
|
version_requirements: *id003
|
67
65
|
description: = Caterpillar
|
@@ -75,11 +73,32 @@ extra_rdoc_files:
|
|
75
73
|
- MIT-LICENSE
|
76
74
|
- ChangeLog
|
77
75
|
files:
|
76
|
+
- .gitignore
|
77
|
+
- ChangeLog
|
78
|
+
- MIT-LICENSE
|
79
|
+
- README.rdoc
|
78
80
|
- Rakefile
|
81
|
+
- bin/caterpillar
|
82
|
+
- caterpillar.gemspec
|
83
|
+
- generators/caterpillar/USAGE
|
84
|
+
- generators/caterpillar/caterpillar_generator.rb
|
85
|
+
- generators/caterpillar/templates/config/portlets.rb
|
86
|
+
- generators/caterpillar/templates/images/caterpillar/caterpillar.gif
|
87
|
+
- generators/caterpillar/templates/images/portlet_test_bench/Leafy_Sea_Dragon_1.jpg
|
88
|
+
- generators/caterpillar/templates/images/portlet_test_bench/debug.jpg
|
89
|
+
- generators/caterpillar/templates/images/portlet_test_bench/java.png
|
90
|
+
- generators/caterpillar/templates/images/portlet_test_bench/rails.png
|
91
|
+
- generators/caterpillar/templates/images/portlet_test_bench/ruby.gif
|
92
|
+
- generators/caterpillar/templates/javascripts/portlet_test_bench/main.js
|
93
|
+
- generators/caterpillar/templates/stylesheets/portlet_test_bench/main.css
|
94
|
+
- generators/html_template/html_template_generator.rb
|
95
|
+
- generators/html_template/templates/application.html.erb
|
79
96
|
- init.rb
|
80
97
|
- install.rb
|
98
|
+
- lib/caterpillar.rb
|
81
99
|
- lib/caterpillar/config.rb
|
82
100
|
- lib/caterpillar/helpers/liferay.rb
|
101
|
+
- lib/caterpillar/helpers/portlet.rb
|
83
102
|
- lib/caterpillar/liferay.rb
|
84
103
|
- lib/caterpillar/navigation.rb
|
85
104
|
- lib/caterpillar/parser.rb
|
@@ -89,25 +108,10 @@ files:
|
|
89
108
|
- lib/caterpillar/task.rb
|
90
109
|
- lib/caterpillar/usage.rb
|
91
110
|
- lib/caterpillar/util.rb
|
92
|
-
- lib/
|
93
|
-
- lib/java/rails-portlet-0.10.1.jar
|
111
|
+
- lib/java/rails-portlet-0.12.0.jar
|
94
112
|
- lib/rails_gem_chooser.rb
|
95
113
|
- lib/web/portlet.rb
|
96
|
-
-
|
97
|
-
- generators/caterpillar/templates/config/portlets.rb
|
98
|
-
- generators/caterpillar/templates/images/caterpillar/caterpillar.gif
|
99
|
-
- generators/caterpillar/templates/images/portlet_test_bench/debug.jpg
|
100
|
-
- generators/caterpillar/templates/images/portlet_test_bench/java.png
|
101
|
-
- generators/caterpillar/templates/images/portlet_test_bench/Leafy_Sea_Dragon_1.jpg
|
102
|
-
- generators/caterpillar/templates/images/portlet_test_bench/rails.png
|
103
|
-
- generators/caterpillar/templates/images/portlet_test_bench/ruby.gif
|
104
|
-
- generators/caterpillar/templates/javascripts/portlet_test_bench/main.js
|
105
|
-
- generators/caterpillar/templates/stylesheets/portlet_test_bench/main.css
|
106
|
-
- generators/caterpillar/USAGE
|
107
|
-
- generators/html_template/html_template_generator.rb
|
108
|
-
- generators/html_template/templates/application.html.erb
|
109
|
-
- views/caterpillar/_navigation.html.erb
|
110
|
-
- views/layouts/caterpillar.html.erb
|
114
|
+
- portlet_test_bench/README.rdoc
|
111
115
|
- portlet_test_bench/controllers/caterpillar/application.rb
|
112
116
|
- portlet_test_bench/controllers/caterpillar/css_controller.rb
|
113
117
|
- portlet_test_bench/controllers/caterpillar/http_methods_controller.rb
|
@@ -121,7 +125,6 @@ files:
|
|
121
125
|
- portlet_test_bench/controllers/caterpillar/xhr_controller.rb
|
122
126
|
- portlet_test_bench/helpers/caterpillar/application_helper.rb
|
123
127
|
- portlet_test_bench/helpers/caterpillar/junit_helper.rb
|
124
|
-
- portlet_test_bench/README.rdoc
|
125
128
|
- portlet_test_bench/resources/jake_sully.jpg
|
126
129
|
- portlet_test_bench/routing.rb
|
127
130
|
- portlet_test_bench/views/caterpillar/application/_back_to_menu.html.erb
|
@@ -162,11 +165,23 @@ files:
|
|
162
165
|
- portlet_test_bench/views/caterpillar/resource/exit_portlet.html.erb
|
163
166
|
- portlet_test_bench/views/caterpillar/resource/images.html.erb
|
164
167
|
- portlet_test_bench/views/caterpillar/session/cookie.html.erb
|
168
|
+
- portlet_test_bench/views/caterpillar/session/cookies.html.erb
|
165
169
|
- portlet_test_bench/views/caterpillar/session/flash_display.html.erb
|
170
|
+
- portlet_test_bench/views/caterpillar/session/namespace.html.erb
|
166
171
|
- portlet_test_bench/views/caterpillar/user/home.html.erb
|
172
|
+
- portlet_test_bench/views/caterpillar/xhr/resource.html.erb
|
167
173
|
- portlet_test_bench/views/caterpillar/xhr/time.html.erb
|
168
174
|
- portlet_test_bench/views/layouts/bare.html.erb
|
169
175
|
- portlet_test_bench/views/layouts/basic.html.erb
|
176
|
+
- spec/app1/config/routes.rb
|
177
|
+
- spec/app2/config/routes.rb
|
178
|
+
- spec/app3/config/routes.rb
|
179
|
+
- spec/caterpillar/helper_spec.rb
|
180
|
+
- spec/caterpillar/task_spec.rb
|
181
|
+
- spec/spec.opts
|
182
|
+
- spec/spec_helper.rb
|
183
|
+
- spec/xml/liferay-portal-5.2.3/tomcat-6.0.18/webapps/ROOT/WEB-INF/liferay-display.xml
|
184
|
+
- test/README
|
170
185
|
- test/dtd/liferay-display_5_1_0.dtd
|
171
186
|
- test/dtd/liferay-display_5_2_0.dtd
|
172
187
|
- test/dtd/liferay-display_6_0_0.dtd
|
@@ -180,10 +195,8 @@ files:
|
|
180
195
|
- test/rails_task_test.rb
|
181
196
|
- test/test_helper.rb
|
182
197
|
- test/xml_test.rb
|
183
|
-
-
|
184
|
-
-
|
185
|
-
- MIT-LICENSE
|
186
|
-
- ChangeLog
|
198
|
+
- views/caterpillar/_navigation.html.erb
|
199
|
+
- views/layouts/caterpillar.html.erb
|
187
200
|
has_rdoc: true
|
188
201
|
homepage: http://github.com/lamikae/caterpillar
|
189
202
|
licenses: []
|
@@ -219,9 +232,18 @@ requirements: []
|
|
219
232
|
rubyforge_project: rails-portlet
|
220
233
|
rubygems_version: 1.3.7
|
221
234
|
signing_key:
|
222
|
-
specification_version:
|
235
|
+
specification_version: 3
|
223
236
|
summary: Caterpillar helps building Rails applications for JSR286 portlets.
|
224
237
|
test_files:
|
238
|
+
- spec/app1/config/routes.rb
|
239
|
+
- spec/app2/config/routes.rb
|
240
|
+
- spec/app3/config/routes.rb
|
241
|
+
- spec/caterpillar/helper_spec.rb
|
242
|
+
- spec/caterpillar/task_spec.rb
|
243
|
+
- spec/spec.opts
|
244
|
+
- spec/spec_helper.rb
|
245
|
+
- spec/xml/liferay-portal-5.2.3/tomcat-6.0.18/webapps/ROOT/WEB-INF/liferay-display.xml
|
246
|
+
- test/README
|
225
247
|
- test/dtd/liferay-display_5_1_0.dtd
|
226
248
|
- test/dtd/liferay-display_5_2_0.dtd
|
227
249
|
- test/dtd/liferay-display_6_0_0.dtd
|
Binary file
|