htmlgrid 1.1.6 → 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/TooltipDialog.txt +73 -0
- data/interaction_no_inline.txt +1216 -0
- 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 -197
- 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 +86 -53
- 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 +124 -112
- 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 +141 -91
- 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 -26
- 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 +66 -55
- data/test/test_text.rb +36 -31
- metadata +20 -3
data/test/test_template.rb
CHANGED
@@ -21,99 +21,110 @@
|
|
21
21
|
# ywesee - intellectual capital connected, Winterthurerstrasse 52, CH-8006 Zuerich, Switzerland
|
22
22
|
# htmlgrid@ywesee.com, downloads.ywesee.com/ruby/htmlgrid
|
23
23
|
#
|
24
|
-
# TestTemplate -- htmlgrid -- 19.11.2002 -- hwyss@ywesee.com
|
24
|
+
# TestTemplate -- htmlgrid -- 19.11.2002 -- hwyss@ywesee.com
|
25
25
|
|
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
|
+
|
127
|
+
def test_to_html_with_nil_inline
|
128
|
+
assert_nil(HtmlGrid::TemplateMethods.get_inline(nil))
|
129
|
+
end
|
119
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.1
|
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:
|
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: []
|
@@ -157,6 +171,8 @@ extensions: []
|
|
157
171
|
extra_rdoc_files: []
|
158
172
|
files:
|
159
173
|
- Manifest.txt
|
174
|
+
- TooltipDialog.txt
|
175
|
+
- interaction_no_inline.txt
|
160
176
|
- lib/htmlgrid/booleanvalue.rb
|
161
177
|
- lib/htmlgrid/button.rb
|
162
178
|
- lib/htmlgrid/centeredcomposite.rb
|
@@ -213,6 +229,7 @@ files:
|
|
213
229
|
- test/test_component.rb
|
214
230
|
- test/test_composite.rb
|
215
231
|
- test/test_datevalue.rb
|
232
|
+
- test/test_divlist.rb
|
216
233
|
- test/test_dojotoolkit.rb
|
217
234
|
- test/test_form.rb
|
218
235
|
- test/test_formlist.rb
|
@@ -244,7 +261,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
244
261
|
- !ruby/object:Gem::Version
|
245
262
|
version: '0'
|
246
263
|
requirements: []
|
247
|
-
rubygems_version: 3.
|
264
|
+
rubygems_version: 3.2.4
|
248
265
|
signing_key:
|
249
266
|
specification_version: 4
|
250
267
|
summary: HtmlGrid is a Html-ToolKit for Ruby Webframeworks.
|