rdtool 0.6.23
Sign up to get free protection for your applications and to get access to all the features.
- data/COPYING.txt +674 -0
- data/Gemfile +9 -0
- data/HISTORY +284 -0
- data/LICENSE.txt +58 -0
- data/MANIFEST +89 -0
- data/README.html +44 -0
- data/README.ja.html +46 -0
- data/README.rd +52 -0
- data/README.rd.ja +54 -0
- data/Rakefile +29 -0
- data/TODO +15 -0
- data/VERSION +1 -0
- data/bin/rd2 +281 -0
- data/bin/rdswap.rb +207 -0
- data/doc/rd-draft.rd +479 -0
- data/doc/rd-draft.rd.ja +487 -0
- data/lib/rd/block-element.rb +114 -0
- data/lib/rd/complex-list-item.rb +65 -0
- data/lib/rd/desclist.rb +55 -0
- data/lib/rd/document-struct.rb +46 -0
- data/lib/rd/dot.rd2rc +18 -0
- data/lib/rd/element.rb +160 -0
- data/lib/rd/filter.rb +255 -0
- data/lib/rd/inline-element.rb +233 -0
- data/lib/rd/labeled-element.rb +14 -0
- data/lib/rd/list.rb +57 -0
- data/lib/rd/loose-struct.rb +11 -0
- data/lib/rd/methodlist.rb +57 -0
- data/lib/rd/output-format-visitor.rb +28 -0
- data/lib/rd/package.rb +4 -0
- data/lib/rd/parser-util.rb +14 -0
- data/lib/rd/post-install +1 -0
- data/lib/rd/rbl-file.rb +69 -0
- data/lib/rd/rbl-suite.rb +37 -0
- data/lib/rd/rd-struct.rb +86 -0
- data/lib/rd/rd2html-lib.rb +490 -0
- data/lib/rd/rd2html-opt.rb +67 -0
- data/lib/rd/rd2man-lib.rb +241 -0
- data/lib/rd/rd2rdo-lib.rb +19 -0
- data/lib/rd/rd2rmi-lib.rb +32 -0
- data/lib/rd/rdblockparser.ry +518 -0
- data/lib/rd/rdblockparser.tab.rb +1050 -0
- data/lib/rd/rdfmt.rb +15 -0
- data/lib/rd/rdinlineparser.ry +503 -0
- data/lib/rd/rdinlineparser.tab.rb +1243 -0
- data/lib/rd/rdvisitor.rb +214 -0
- data/lib/rd/reference-resolver.rb +114 -0
- data/lib/rd/search-file.rb +14 -0
- data/lib/rd/tree.rb +103 -0
- data/lib/rd/version.rb +39 -0
- data/lib/rd/visitor.rb +86 -0
- data/makerdtool.rb +75 -0
- data/setup.rb +1596 -0
- data/test.rb +33 -0
- data/test/data/includee1.html +1 -0
- data/test/data/includee2.html +1 -0
- data/test/data/includee3.nothtml +1 -0
- data/test/data/includee4.xhtml +0 -0
- data/test/data/label.rbl +2 -0
- data/test/data/label2.rbl +2 -0
- data/test/data/sub/includee2.html +1 -0
- data/test/data/sub/includee4.html +0 -0
- data/test/dummy-observer.rb +6 -0
- data/test/dummy.rb +33 -0
- data/test/temp-dir.rb +19 -0
- data/test/test-block-parser.rb +46 -0
- data/test/test-desclist-item.rb +219 -0
- data/test/test-document-element.rb +46 -0
- data/test/test-document-struct.rb +66 -0
- data/test/test-element.rb +46 -0
- data/test/test-headline.rb +80 -0
- data/test/test-inline-parser.rb +46 -0
- data/test/test-list-item.rb +54 -0
- data/test/test-list.rb +53 -0
- data/test/test-methodlist-item.rb +73 -0
- data/test/test-nonterminal-element.rb +170 -0
- data/test/test-nonterminal-inline.rb +33 -0
- data/test/test-output-format-visitor.rb +48 -0
- data/test/test-parser-util.rb +41 -0
- data/test/test-rbl-file.rb +156 -0
- data/test/test-rbl-suite.rb +43 -0
- data/test/test-rd2html-lib.rb +496 -0
- data/test/test-rdtree.rb +17 -0
- data/test/test-rdvisitor.rb +29 -0
- data/test/test-reference-resolver.rb +202 -0
- data/test/test-reference.rb +132 -0
- data/test/test-search-file.rb +22 -0
- data/test/test-terminal-inline.rb +41 -0
- data/test/test-textblock.rb +44 -0
- data/test/test-tree.rb +82 -0
- data/test/test-version.rb +57 -0
- data/test/test-visitor.rb +230 -0
- data/utils/rd-mode.el +425 -0
- metadata +203 -0
data/test/test-rdtree.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
require 'rd/rdfmt'
|
4
|
+
require 'rd/element'
|
5
|
+
|
6
|
+
include RD
|
7
|
+
|
8
|
+
class TestRDTree < Test::Unit::TestCase
|
9
|
+
def test_s_new
|
10
|
+
tr = RDTree.new("=begin\nTEST\n=end\n")
|
11
|
+
assert_kind_of(DocumentElement, tr.root)
|
12
|
+
|
13
|
+
tr_not_parse = RDTree.new("=begin\nTEST\n=end\n", ["test/data"], false)
|
14
|
+
assert_nil(tr_not_parse.root)
|
15
|
+
assert_equal(["test/data"], tr_not_parse.include_paths)
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
require 'rd/rdvisitor'
|
4
|
+
require 'rd/rd-struct'
|
5
|
+
|
6
|
+
include RD
|
7
|
+
class TestRDVisitor < Test::Unit::TestCase
|
8
|
+
|
9
|
+
def test_refer_external
|
10
|
+
tr_ext = Tree.new_with_document_struct(DocumentStructure::RD,
|
11
|
+
["test/data"])
|
12
|
+
label_ext = Reference::RDLabel.new("label1", "label.rd")
|
13
|
+
tr_ext.root = DocumentElement.new
|
14
|
+
ref_ext = nil
|
15
|
+
tr_ext.root.build do
|
16
|
+
new TextBlock do
|
17
|
+
StringElement.new "label"
|
18
|
+
ref_ext = new Reference, label_ext
|
19
|
+
end
|
20
|
+
end
|
21
|
+
vis_ext = RDVisitor.new
|
22
|
+
vis_ext.prepare_labels(tr_ext)
|
23
|
+
label_not_exist = Reference::RDLabel.new("label3", "label.rd")
|
24
|
+
|
25
|
+
assert_equal("label:0", vis_ext.refer_external(ref_ext))
|
26
|
+
assert_equal( "label:0", vis_ext.refer_external(label_ext))
|
27
|
+
assert_equal(nil, vis_ext.refer_external(label_not_exist))
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,202 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
require 'temp-dir'
|
4
|
+
|
5
|
+
require 'rd/reference-resolver'
|
6
|
+
require 'rd/tree'
|
7
|
+
require 'rd/rd-struct'
|
8
|
+
|
9
|
+
include RD
|
10
|
+
|
11
|
+
class TestReferenceResolver < Test::Unit::TestCase
|
12
|
+
def setup
|
13
|
+
@tr_head1 = Tree.new_with_document_struct(DocumentStructure::RD)
|
14
|
+
@de_head1 = DocumentElement.new
|
15
|
+
@tr_head1.root = @de_head1
|
16
|
+
|
17
|
+
hl_head1 = nil
|
18
|
+
se_head1 = nil
|
19
|
+
@de_head1.build do
|
20
|
+
hl_head1 = new Headline, 1 do
|
21
|
+
se_head1 = new StringElement, "label"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
@hl_head1 = hl_head1
|
25
|
+
@se_head1 = se_head1
|
26
|
+
|
27
|
+
@tr_head2 = Tree.new_with_document_struct(DocumentStructure::RD)
|
28
|
+
@de_head2 = DocumentElement.new
|
29
|
+
@tr_head2.root = @de_head2
|
30
|
+
hl1_head2, hl2_head2 = nil
|
31
|
+
|
32
|
+
@de_head2.build do
|
33
|
+
hl1_head2 = new Headline, 1 do
|
34
|
+
new StringElement, "label1"
|
35
|
+
end
|
36
|
+
new TextBlock
|
37
|
+
hl2_head2 = new Headline, 2 do
|
38
|
+
new StringElement, "label2"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
@hl1_head2 = hl1_head2
|
42
|
+
@hl2_head2 = hl2_head2
|
43
|
+
|
44
|
+
@tr_desc = Tree.new_with_document_struct(DocumentStructure::RD)
|
45
|
+
@de_desc = DocumentElement.new
|
46
|
+
@tr_desc.root = @de_desc
|
47
|
+
hl1_desc, dt1_desc = nil
|
48
|
+
@de_desc.build do
|
49
|
+
hl1_desc = new(Headline, 1) do
|
50
|
+
new StringElement, "label1"
|
51
|
+
end
|
52
|
+
new DescList do
|
53
|
+
new DescListItem do
|
54
|
+
dt1_desc = make_term do
|
55
|
+
new StringElement, "label2"
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
@hl1_desc = hl1_desc
|
61
|
+
@dt1_desc = dt1_desc
|
62
|
+
|
63
|
+
@tr_conf = Tree.new_with_document_struct(DocumentStructure::RD)
|
64
|
+
@de_conf = DocumentElement.new
|
65
|
+
@tr_conf.root = @de_conf
|
66
|
+
hl1_conf, hl2_conf = nil
|
67
|
+
@de_conf.build do
|
68
|
+
hl1_conf = new Headline, 1 do
|
69
|
+
new StringElement, "label"
|
70
|
+
end
|
71
|
+
hl2_conf = new Headline, 2 do
|
72
|
+
new StringElement, "label"
|
73
|
+
end
|
74
|
+
end
|
75
|
+
@hl1_conf = hl1_conf
|
76
|
+
@hl2_conf = hl2_conf
|
77
|
+
|
78
|
+
@tr_no = Tree.new_with_document_struct(DocumentStructure::RD)
|
79
|
+
@de_no = DocumentElement.new
|
80
|
+
@tr_no.root = @de_no
|
81
|
+
|
82
|
+
@resolver = ReferenceResolver.new(@tr_head2)
|
83
|
+
end
|
84
|
+
|
85
|
+
def test_referent_of_label
|
86
|
+
@tr_desc.include_path = ["test/data"]
|
87
|
+
resolv = ReferenceResolver.new(@tr_desc, "label:")
|
88
|
+
label1 = Reference::RDLabel.new("label1")
|
89
|
+
assert_equal([nil, "label:0"], resolv.referent_of_label(label1))
|
90
|
+
label2 = Reference::RDLabel.new("label2")
|
91
|
+
assert_equal([nil, "label:1"], resolv.referent_of_label(label2))
|
92
|
+
label_ext = Reference::RDLabel.new("label1", "label.rd")
|
93
|
+
assert_equal(["label", "label:0"], resolv.referent_of_label(label_ext))
|
94
|
+
|
95
|
+
label3 = Reference::RDLabel.new("label3")
|
96
|
+
assert_equal(nil, resolv.referent_of_label(label3))
|
97
|
+
label_ext3 = Reference::RDLabel.new("label3", "label.rd")
|
98
|
+
assert_equal(["label", nil], resolv.referent_of_label(label_ext3))
|
99
|
+
end
|
100
|
+
|
101
|
+
def test_refer_element
|
102
|
+
resolv = ReferenceResolver.new(@tr_head1)
|
103
|
+
assert_equal([@hl_head1], resolv.refer_element("label"))
|
104
|
+
assert_equal([], resolv.refer_element("label not found"))
|
105
|
+
resolv = ReferenceResolver.new(@tr_head2)
|
106
|
+
assert_equal([@hl1_head2], resolv.refer_element("label1"))
|
107
|
+
assert_equal([@hl2_head2], resolv.refer_element("label2"))
|
108
|
+
resolv = ReferenceResolver.new(@tr_desc)
|
109
|
+
assert_equal([@hl1_desc], resolv.refer_element("label1"))
|
110
|
+
assert_equal([@dt1_desc], resolv.refer_element("label2"))
|
111
|
+
resolv = ReferenceResolver.new(@tr_conf)
|
112
|
+
assert_equal([@hl1_conf, @hl2_conf], resolv.refer_element("label"))
|
113
|
+
resolv = ReferenceResolver.new(@tr_no)
|
114
|
+
assert_equal([], resolv.refer_element("label"))
|
115
|
+
end
|
116
|
+
|
117
|
+
def test_refer
|
118
|
+
resolv = ReferenceResolver.new(@tr_head1, "label:")
|
119
|
+
assert_equal("label:0", resolv.refer("label"))
|
120
|
+
assert_equal(nil, resolv.refer("label not found"))
|
121
|
+
resolv = ReferenceResolver.new(@tr_head2, "label:")
|
122
|
+
assert_equal("label:0", resolv.refer("label1"))
|
123
|
+
assert_equal("label:1", resolv.refer("label2"))
|
124
|
+
resolv = ReferenceResolver.new(@tr_desc, "label:")
|
125
|
+
assert_equal("label:0", resolv.refer("label1"))
|
126
|
+
assert_equal("label:1", resolv.refer("label2"))
|
127
|
+
resolv = ReferenceResolver.new(@tr_conf, "label:")
|
128
|
+
assert_equal("label:0", resolv.refer("label"))
|
129
|
+
resolv = ReferenceResolver.new(@tr_no, "label:")
|
130
|
+
assert_equal(nil, resolv.refer("label"))
|
131
|
+
|
132
|
+
resolv = ReferenceResolver.new(@tr_head1, "label:")
|
133
|
+
label = Reference::RDLabel.new("label")
|
134
|
+
assert_equal("label:0", resolv.refer(label))
|
135
|
+
ref = Reference.new(label)
|
136
|
+
assert_equal("label:0", resolv.refer(ref))
|
137
|
+
end
|
138
|
+
|
139
|
+
def test_refer_external_file
|
140
|
+
tr_ext = Tree.new_with_document_struct(DocumentStructure::RD,
|
141
|
+
["test/data"])
|
142
|
+
label_ext = Reference::RDLabel.new("label1", "label.rd")
|
143
|
+
de = DocumentElement.new
|
144
|
+
tr_ext.root = de
|
145
|
+
ref = nil
|
146
|
+
de.build do
|
147
|
+
new TextBlock do
|
148
|
+
se = StringElement.new "label"
|
149
|
+
ref = new Reference, label_ext
|
150
|
+
end
|
151
|
+
end
|
152
|
+
label_not_exist = Reference::RDLabel.new("label3", "label.rd")
|
153
|
+
resolv = ReferenceResolver.new(tr_ext)
|
154
|
+
|
155
|
+
assert_equal(["label", "label:0"], resolv.refer_external_file(ref))
|
156
|
+
assert_equal(["label", "label:0"], resolv.refer_external_file(label_ext))
|
157
|
+
assert_equal(["label", nil], resolv.refer_external_file(label_not_exist))
|
158
|
+
end
|
159
|
+
|
160
|
+
def test_get_label_num
|
161
|
+
assert_equal(0, @resolver.get_label_num(@hl1_head2))
|
162
|
+
assert_equal(1, @resolver.get_label_num(@hl2_head2))
|
163
|
+
assert_equal(nil, @resolver.get_label_num(@dt1_desc))
|
164
|
+
end
|
165
|
+
|
166
|
+
def test_get_anchor
|
167
|
+
resolv = ReferenceResolver.new(@tr_head2, "Label-")
|
168
|
+
assert_equal("Label-0", resolv.get_anchor(@hl1_head2))
|
169
|
+
assert_equal("Label-1", resolv.get_anchor(@hl2_head2))
|
170
|
+
assert_equal(nil, resolv.get_anchor(@dt1_desc))
|
171
|
+
end
|
172
|
+
|
173
|
+
def test_label2str
|
174
|
+
assert_equal("string", @resolver.label2str("string"))
|
175
|
+
assert_equal("label", @resolver.label2str(@hl_head1))
|
176
|
+
assert_equal("label2", @resolver.label2str(@dt1_desc))
|
177
|
+
label = Reference::RDLabel.new("label1")
|
178
|
+
assert_equal("label1", @resolver.label2str(label))
|
179
|
+
ref = Reference.new(label)
|
180
|
+
assert_equal("label1", @resolver.label2str(ref))
|
181
|
+
assert_raises(ArgumentError) do
|
182
|
+
@resolver.label2str([])
|
183
|
+
end
|
184
|
+
end
|
185
|
+
|
186
|
+
def test_make_rbl_file
|
187
|
+
in_temp_dir do
|
188
|
+
begin
|
189
|
+
@resolver.make_rbl_file("label-head")
|
190
|
+
assert(File.exist?("label-head.rbl"))
|
191
|
+
ensure
|
192
|
+
remove_file("label-head.rbl")
|
193
|
+
end
|
194
|
+
begin
|
195
|
+
@resolver.make_rbl_file("label-head2.rd")
|
196
|
+
assert(File.exist?("label-head2.rbl"))
|
197
|
+
ensure
|
198
|
+
remove_file("label-head2.rbl")
|
199
|
+
end
|
200
|
+
end
|
201
|
+
end
|
202
|
+
end
|
@@ -0,0 +1,132 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
require 'rd/inline-element'
|
4
|
+
require 'rd/document-struct'
|
5
|
+
require 'rd/rd-struct'
|
6
|
+
require 'rd/loose-struct'
|
7
|
+
require 'dummy'
|
8
|
+
|
9
|
+
include RD
|
10
|
+
|
11
|
+
DummyStruct.define_relationship(Reference, DummyElement)
|
12
|
+
|
13
|
+
class TestReference < Test::Unit::TestCase
|
14
|
+
def test_initialize
|
15
|
+
d1 = DummyElement.new
|
16
|
+
l = Reference::TemporaryLabel.new([d1])
|
17
|
+
ref = Reference.new_from_label_under_document_struct(l, DummyStruct)
|
18
|
+
assert_kind_of(Reference::RDLabel, ref.label)
|
19
|
+
assert_equal([d1], ref.instance_eval("children"))
|
20
|
+
|
21
|
+
l2 = Reference::TemporaryLabel.new([d1], "filename")
|
22
|
+
ref = Reference.new_from_label_under_document_struct(l2, DummyStruct)
|
23
|
+
assert_kind_of(Reference::RDLabel, ref.label)
|
24
|
+
assert_equal([d1], ref.instance_eval("children"))
|
25
|
+
assert_equal("filename", ref.label.filename)
|
26
|
+
|
27
|
+
l = Reference::RDLabel.new("label")
|
28
|
+
ref = Reference.new(l)
|
29
|
+
assert_kind_of(Reference::RDLabel, ref.label)
|
30
|
+
assert_equal([], ref.instance_eval("children"))
|
31
|
+
|
32
|
+
url = Reference::URL.new("label")
|
33
|
+
ref2 = Reference.new_from_label_under_document_struct(url,
|
34
|
+
DocumentStructure::RD)
|
35
|
+
assert_kind_of(Reference::URL, ref2.label)
|
36
|
+
assert_kind_of(StringElement, ref2.instance_eval("children")[0])
|
37
|
+
assert_equal("<URL:label>", ref2.instance_eval("children")[0].content)
|
38
|
+
end
|
39
|
+
|
40
|
+
def test_s_new_from_label_without_document_struct
|
41
|
+
se = StringElement.new "string"
|
42
|
+
label = Reference::TemporaryLabel.new([se])
|
43
|
+
ref = Reference.new_from_label_without_document_struct(label)
|
44
|
+
assert_kind_of(Reference::RDLabel, ref.label)
|
45
|
+
assert_equal([se], ref.instance_eval("children"))
|
46
|
+
end
|
47
|
+
|
48
|
+
def test_to_label_RDLabel
|
49
|
+
l = Reference::TemporaryLabel.new([DummyElement.new])
|
50
|
+
ref = Reference.new(l)
|
51
|
+
assert_equal("label", ref.to_label)
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_to_label_URL
|
55
|
+
l = Reference::URL.new "http://www.ruby-lang.org/"
|
56
|
+
ref = Reference.new l
|
57
|
+
assert_equal("", ref.to_label)
|
58
|
+
end
|
59
|
+
|
60
|
+
def test_result_of_apply_method_of
|
61
|
+
visitor = DummyVisitor.new
|
62
|
+
label = Reference::RDLabel.new("label")
|
63
|
+
reference = Reference.new(label)
|
64
|
+
result = ["apply_to_Reference_with_RDLabel",
|
65
|
+
[reference, []]]
|
66
|
+
assert_equal(result, reference.result_of_apply_method_of(visitor, []))
|
67
|
+
|
68
|
+
url = Reference::URL.new("url")
|
69
|
+
reference = Reference.new(url)
|
70
|
+
result = ["apply_to_Reference_with_URL",
|
71
|
+
[reference, []]]
|
72
|
+
assert_equal(result, reference.result_of_apply_method_of(visitor, []))
|
73
|
+
end
|
74
|
+
|
75
|
+
def test_add_child
|
76
|
+
d1 = DummyElement.new
|
77
|
+
d2 = DummyElement.new
|
78
|
+
l = Reference::TemporaryLabel.new([d1])
|
79
|
+
ref = Reference.new_from_label_under_document_struct(l, DummyStruct)
|
80
|
+
ref.add_child_under_document_struct(d2, DummyStruct)
|
81
|
+
assert_equal(3, ref.to_a.size)
|
82
|
+
assert_equal("label", ref.label.element_label)
|
83
|
+
end
|
84
|
+
|
85
|
+
def test_build
|
86
|
+
lb = Reference::RDLabel.new("label")
|
87
|
+
ref = Reference.new(lb).build(DocumentStructure::LOOSE) do
|
88
|
+
set_label(Reference::RDLabel.new("LABEL"))
|
89
|
+
end
|
90
|
+
assert_equal("LABEL", ref.to_label)
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
class TestRDLabel < Test::Unit::TestCase
|
95
|
+
def test_to_label
|
96
|
+
one = Reference::RDLabel.new("label")
|
97
|
+
assert_equal("label", one.to_label)
|
98
|
+
zero = Reference::RDLabel.new("")
|
99
|
+
assert_equal("", zero.to_label)
|
100
|
+
file = Reference::RDLabel.new("label", "filename")
|
101
|
+
assert_equal("label", file.to_label)
|
102
|
+
end
|
103
|
+
|
104
|
+
def test_result_of_apply_method_of
|
105
|
+
visitor = DummyVisitor.new
|
106
|
+
label = Reference::RDLabel.new("label")
|
107
|
+
reference = Reference.new(label)
|
108
|
+
result = ["apply_to_Reference_with_RDLabel",
|
109
|
+
[reference, []]]
|
110
|
+
assert_equal(result, label.result_of_apply_method_of(visitor, reference,
|
111
|
+
[]))
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
class TestURL < Test::Unit::TestCase
|
116
|
+
def test_to_label
|
117
|
+
nor = Reference::URL.new "http://www.ruby-lang.org/"
|
118
|
+
assert_equal("", nor.to_label)
|
119
|
+
empty = Reference::URL.new ""
|
120
|
+
assert_equal("", empty.to_label)
|
121
|
+
end
|
122
|
+
|
123
|
+
def test_result_of_apply_method_of
|
124
|
+
visitor = DummyVisitor.new
|
125
|
+
label = Reference::URL.new("label")
|
126
|
+
reference = Reference.new(label)
|
127
|
+
result = ["apply_to_Reference_with_URL",
|
128
|
+
[reference, []]]
|
129
|
+
assert_equal(result, label.result_of_apply_method_of(visitor, reference,
|
130
|
+
[]))
|
131
|
+
end
|
132
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
require 'rd/search-file'
|
4
|
+
|
5
|
+
include RD
|
6
|
+
class TestSearchFile < Test::Unit::TestCase
|
7
|
+
include SearchFile
|
8
|
+
|
9
|
+
def test_search_file
|
10
|
+
include_path = ["test/data/sub", "test/data"]
|
11
|
+
suffixes = ["xhtml", "html"]
|
12
|
+
|
13
|
+
assert_equal("test/data/includee1.html",
|
14
|
+
search_file("includee1", include_path, suffixes))
|
15
|
+
assert_equal("test/data/sub/includee2.html",
|
16
|
+
search_file("includee2", include_path, suffixes))
|
17
|
+
assert_equal(nil,
|
18
|
+
search_file("includee3", include_path, suffixes))
|
19
|
+
assert_equal("test/data/sub/includee4.html",
|
20
|
+
search_file("includee4", include_path, suffixes))
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
require 'rd/inline-element'
|
4
|
+
|
5
|
+
include RD
|
6
|
+
|
7
|
+
class TestStringElement < Test::Unit::TestCase
|
8
|
+
def test_to_label
|
9
|
+
el = StringElement.new "label"
|
10
|
+
assert_equal("label", el.to_label)
|
11
|
+
ws = StringElement.new " label "
|
12
|
+
assert_equal(" label ", ws.to_label)
|
13
|
+
empty = StringElement.new ""
|
14
|
+
assert_equal("", empty.to_label)
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_content
|
18
|
+
el = StringElement.new ""
|
19
|
+
assert_equal("", el.content)
|
20
|
+
el.content = "label"
|
21
|
+
assert_equal("label", el.content)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
class TestVerb < Test::Unit::TestCase
|
26
|
+
def test_to_label
|
27
|
+
el = Verb.new "label"
|
28
|
+
assert_equal("label", el.to_label)
|
29
|
+
ws = Verb.new " label "
|
30
|
+
assert_equal("label", ws.to_label)
|
31
|
+
empty = Verb.new ""
|
32
|
+
assert_equal("", empty.to_label)
|
33
|
+
end
|
34
|
+
|
35
|
+
def test_content
|
36
|
+
el = Verb.new ""
|
37
|
+
assert_equal("", el.content)
|
38
|
+
el.content = "label"
|
39
|
+
assert_equal("label", el.content)
|
40
|
+
end
|
41
|
+
end
|