htmlgrid 1.2.0 → 1.2.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.
- checksums.yaml +4 -4
- data/lib/htmlgrid/booleanvalue.rb +14 -14
- data/lib/htmlgrid/button.rb +9 -9
- data/lib/htmlgrid/centeredcomposite.rb +21 -20
- data/lib/htmlgrid/component.rb +214 -199
- data/lib/htmlgrid/composite.rb +332 -301
- data/lib/htmlgrid/datevalue.rb +12 -12
- data/lib/htmlgrid/div.rb +9 -9
- data/lib/htmlgrid/divcomposite.rb +44 -43
- data/lib/htmlgrid/divform.rb +8 -8
- data/lib/htmlgrid/divlist.rb +17 -19
- data/lib/htmlgrid/divtemplate.rb +6 -6
- data/lib/htmlgrid/dojotoolkit.rb +54 -48
- data/lib/htmlgrid/errormessage.rb +47 -43
- data/lib/htmlgrid/form.rb +70 -62
- data/lib/htmlgrid/formlist.rb +14 -14
- data/lib/htmlgrid/grid.rb +111 -67
- data/lib/htmlgrid/image.rb +17 -16
- data/lib/htmlgrid/infomessage.rb +15 -14
- data/lib/htmlgrid/input.rb +34 -32
- data/lib/htmlgrid/inputcheckbox.rb +13 -13
- data/lib/htmlgrid/inputcurrency.rb +9 -9
- data/lib/htmlgrid/inputdate.rb +11 -11
- data/lib/htmlgrid/inputfile.rb +13 -12
- data/lib/htmlgrid/inputradio.rb +9 -9
- data/lib/htmlgrid/inputtext.rb +10 -10
- data/lib/htmlgrid/javascript.rb +17 -16
- data/lib/htmlgrid/label.rb +53 -49
- data/lib/htmlgrid/labeltext.rb +8 -8
- data/lib/htmlgrid/link.rb +31 -27
- data/lib/htmlgrid/list.rb +121 -110
- data/lib/htmlgrid/namedcomponent.rb +28 -25
- data/lib/htmlgrid/pass.rb +11 -11
- data/lib/htmlgrid/passthru.rb +20 -17
- data/lib/htmlgrid/popuplink.rb +41 -39
- data/lib/htmlgrid/reset.rb +8 -8
- data/lib/htmlgrid/richtext.rb +22 -20
- data/lib/htmlgrid/select.rb +28 -26
- data/lib/htmlgrid/span.rb +9 -9
- data/lib/htmlgrid/spancomposite.rb +18 -18
- data/lib/htmlgrid/spanlist.rb +9 -9
- data/lib/htmlgrid/staticinput.rb +14 -13
- data/lib/htmlgrid/submit.rb +9 -9
- data/lib/htmlgrid/template.rb +120 -105
- data/lib/htmlgrid/text.rb +9 -9
- data/lib/htmlgrid/textarea.rb +19 -17
- data/lib/htmlgrid/ulcomposite.rb +22 -22
- data/lib/htmlgrid/ullist.rb +9 -9
- data/lib/htmlgrid/urllink.rb +38 -36
- data/lib/htmlgrid/value.rb +9 -9
- data/lib/htmlgrid/version.rb +2 -2
- data/test/stub/cgi.rb +10 -7
- data/test/suite.rb +3 -3
- data/test/test_add_row.rb +12 -13
- data/test/test_component.rb +121 -100
- data/test/test_composite.rb +85 -46
- data/test/test_datevalue.rb +28 -24
- data/test/test_divlist.rb +126 -0
- data/test/test_dojotoolkit.rb +41 -27
- data/test/test_form.rb +89 -73
- data/test/test_formlist.rb +77 -65
- data/test/test_grid.rb +256 -208
- data/test/test_input.rb +37 -31
- data/test/test_interaction_list.rb +106 -70
- data/test/test_label.rb +91 -77
- data/test/test_list.rb +110 -95
- data/test/test_select.rb +35 -30
- data/test/test_template.rb +63 -55
- data/test/test_text.rb +36 -31
- metadata +17 -2
data/test/test_template.rb
CHANGED
@@ -26,97 +26,105 @@
|
|
26
26
|
$LOAD_PATH << File.expand_path("../lib", File.dirname(__FILE__))
|
27
27
|
$LOAD_PATH << File.dirname(__FILE__)
|
28
28
|
|
29
|
-
require
|
30
|
-
require
|
31
|
-
require
|
32
|
-
require
|
33
|
-
require
|
34
|
-
require
|
29
|
+
require "minitest"
|
30
|
+
require "minitest/autorun"
|
31
|
+
require "flexmock/minitest"
|
32
|
+
require "stub/cgi"
|
33
|
+
require "sbsm/lookandfeel"
|
34
|
+
require "htmlgrid/template"
|
35
35
|
|
36
36
|
class StubTemplateSession
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
37
|
+
def flavor
|
38
|
+
"gcc"
|
39
|
+
end
|
40
|
+
|
41
|
+
def language
|
42
|
+
"de"
|
43
|
+
end
|
44
|
+
|
43
45
|
def http_protocol
|
44
|
-
|
46
|
+
"http"
|
45
47
|
end
|
48
|
+
|
46
49
|
def server_name
|
47
50
|
"testserver.com"
|
48
51
|
end
|
52
|
+
|
49
53
|
def server_port
|
50
|
-
|
54
|
+
"80"
|
51
55
|
end
|
52
|
-
|
56
|
+
alias_method :default_language, :language
|
53
57
|
end
|
58
|
+
|
54
59
|
class StubTemplateLookandfeel < SBSM::Lookandfeel
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
60
|
+
RESOURCES = {
|
61
|
+
css: "test.css"
|
62
|
+
}
|
63
|
+
DICTIONARIES = {
|
64
|
+
"de" => {
|
65
|
+
html_title: "Test"
|
66
|
+
}
|
67
|
+
}
|
68
|
+
def lookandfeel
|
69
|
+
self
|
70
|
+
end
|
66
71
|
end
|
67
72
|
|
68
73
|
class Template < HtmlGrid::Template
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
74
|
+
META_TAGS = [
|
75
|
+
{
|
76
|
+
"http-equiv" => "robots",
|
77
|
+
"content" => "follow, index"
|
78
|
+
}
|
79
|
+
]
|
80
|
+
COMPONENTS = {
|
81
|
+
[0, 0] => :foo
|
82
|
+
}
|
83
|
+
LEGACY_INTERFACE = false
|
84
|
+
def foo(model)
|
85
|
+
"foo"
|
86
|
+
end
|
82
87
|
end
|
83
88
|
|
84
89
|
class TestTemplate < Minitest::Test
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
90
|
+
def setup
|
91
|
+
lookandfeel = StubTemplateLookandfeel.new(StubTemplateSession.new)
|
92
|
+
@template = Template.new(nil, lookandfeel, nil)
|
93
|
+
end
|
94
|
+
|
95
|
+
def test_to_html
|
96
|
+
result = ""
|
91
97
|
result << @template.to_html(CGI.new)
|
92
98
|
expected = [
|
93
|
-
|
99
|
+
"<TITLE>Test</TITLE>",
|
94
100
|
'<LINK rel="stylesheet" type="text/css" async="true" href="http://testserver.com:80/resources/gcc/test.css">',
|
95
|
-
'<META http-equiv="robots" content="follow, index">'
|
101
|
+
'<META http-equiv="robots" content="follow, index">'
|
96
102
|
]
|
97
103
|
expected.each_with_index { |line, idx|
|
98
104
|
assert(result.index(line), "#{idx} Missing: #{line} in #{result}")
|
99
105
|
}
|
100
|
-
|
106
|
+
end
|
107
|
+
|
101
108
|
def test_to_html_with_inline_css
|
102
|
-
@lookandfeel = flexmock(
|
103
|
-
@lookandfeel.should_receive(:resource).with(:css).and_return(
|
104
|
-
@lookandfeel.should_receive(:lookup).with(:html_title).and_return(
|
109
|
+
@lookandfeel = flexmock("lnf", StubTemplateLookandfeel.new(StubTemplateSession.new))
|
110
|
+
@lookandfeel.should_receive(:resource).with(:css).and_return("test/inline.css")
|
111
|
+
@lookandfeel.should_receive(:lookup).with(:html_title).and_return("html_title").by_default
|
105
112
|
@lookandfeel.should_receive(:lookup).with(any).and_return(nil).by_default
|
106
113
|
@template = Template.new(nil, @lookandfeel, nil)
|
107
114
|
result = ""
|
108
115
|
result << @template.to_html(CGI.new)
|
109
116
|
expected = [
|
110
|
-
|
111
|
-
|
117
|
+
"<TITLE>html_title</TITLE>",
|
118
|
+
"this is a dummy CSS file, which should be inlined",
|
112
119
|
'<STYLE rel="stylesheet" type="text/css" async="true">',
|
113
|
-
'<META http-equiv="robots" content="follow, index">'
|
120
|
+
'<META http-equiv="robots" content="follow, index">'
|
114
121
|
]
|
115
122
|
expected.each_with_index { |line, idx|
|
116
123
|
assert(result.index(line), "#{idx} Missing: #{line} in #{result}")
|
117
124
|
}
|
118
125
|
end
|
126
|
+
|
119
127
|
def test_to_html_with_nil_inline
|
120
|
-
assert_nil(
|
128
|
+
assert_nil(HtmlGrid::TemplateMethods.get_inline(nil))
|
121
129
|
end
|
122
130
|
end
|
data/test/test_text.rb
CHANGED
@@ -21,43 +21,48 @@
|
|
21
21
|
# ywesee - intellectual capital connected, Winterthurerstrasse 52, CH-8006 Zuerich, Switzerland
|
22
22
|
# htmlgrid@ywesee.com, www.ywesee.com/htmlgrid
|
23
23
|
#
|
24
|
-
# TextText -- htmlgrid -- 20.11.2002 -- hwyss@ywesee.com
|
24
|
+
# TextText -- htmlgrid -- 20.11.2002 -- hwyss@ywesee.com
|
25
25
|
|
26
26
|
$: << File.expand_path("../lib", File.dirname(__FILE__))
|
27
27
|
|
28
|
-
require
|
29
|
-
require
|
28
|
+
require "minitest/autorun"
|
29
|
+
require "htmlgrid/text"
|
30
30
|
|
31
31
|
class StubTextLookandfeel
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
32
|
+
def lookup(key)
|
33
|
+
{
|
34
|
+
foo: "Foo Text!",
|
35
|
+
navigation_divider: " | "
|
36
|
+
}[key]
|
37
|
+
end
|
38
|
+
|
39
|
+
def attributes(key)
|
40
|
+
{"foo" => "bar"} if key == :foo
|
41
|
+
end
|
42
|
+
|
43
|
+
def lookandfeel
|
44
|
+
self
|
45
|
+
end
|
44
46
|
end
|
45
47
|
|
46
48
|
class TestText < Minitest::Test
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
49
|
+
def setup
|
50
|
+
@view = HtmlGrid::Text.new(:foo, nil, StubTextLookandfeel.new)
|
51
|
+
end
|
52
|
+
|
53
|
+
def test_respond_to_attributes
|
54
|
+
assert_respond_to(@view, :attributes)
|
55
|
+
end
|
56
|
+
|
57
|
+
def test_to_html
|
58
|
+
assert_equal("Foo Text!", @view.to_html(nil))
|
59
|
+
end
|
60
|
+
|
61
|
+
def test_init
|
62
|
+
expected = {
|
63
|
+
"foo" => "bar",
|
64
|
+
"name" => "foo"
|
65
|
+
}
|
66
|
+
assert_equal(expected, @view.attributes)
|
67
|
+
end
|
63
68
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: htmlgrid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Masaomi Hatakeyama, Zeno R.R. Davatz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-04-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sbsm
|
@@ -150,6 +150,20 @@ dependencies:
|
|
150
150
|
- - ">="
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: standardrb
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ">="
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
153
167
|
description: Not much to say.
|
154
168
|
email: mhatakeyama@ywesee.com, zdavatz@ywesee.com
|
155
169
|
executables: []
|
@@ -215,6 +229,7 @@ files:
|
|
215
229
|
- test/test_component.rb
|
216
230
|
- test/test_composite.rb
|
217
231
|
- test/test_datevalue.rb
|
232
|
+
- test/test_divlist.rb
|
218
233
|
- test/test_dojotoolkit.rb
|
219
234
|
- test/test_form.rb
|
220
235
|
- test/test_formlist.rb
|