6
class TestMakerAtomEntry < TestCase
8
entry = Maker.make("atom:entry") do |maker|
9
setup_dummy_channel_atom(maker)
10
setup_dummy_item_atom(maker)
12
assert_equal(["atom", "1.0", "entry"], entry.feed_info)
14
entry = Maker.make("atom:entry") do |maker|
15
setup_dummy_channel_atom(maker)
16
setup_dummy_item_atom(maker)
17
maker.encoding = "EUC-JP"
19
assert_equal(["atom", "1.0", "entry"], entry.feed_info)
20
assert_equal("EUC-JP", entry.encoding)
22
entry = Maker.make("atom:entry") do |maker|
23
setup_dummy_channel_atom(maker)
24
setup_dummy_item_atom(maker)
25
maker.standalone = "yes"
27
assert_equal(["atom", "1.0", "entry"], entry.feed_info)
28
assert_equal("yes", entry.standalone)
30
entry = Maker.make("atom:entry") do |maker|
31
setup_dummy_channel_atom(maker)
32
setup_dummy_item_atom(maker)
33
maker.encoding = "EUC-JP"
34
maker.standalone = "yes"
36
assert_equal(["atom", "1.0", "entry"], entry.feed_info)
37
assert_equal("EUC-JP", entry.encoding)
38
assert_equal("yes", entry.standalone)
42
assert_not_set_error("maker.item", %w(id title author updated)) do
43
Maker.make("atom:entry") do |maker|
47
assert_not_set_error("maker.item", %w(id title updated)) do
48
Maker.make("atom:entry") do |maker|
49
maker.channel.author = "foo"
53
assert_not_set_error("maker.item", %w(title updated)) do
54
Maker.make("atom:entry") do |maker|
55
maker.channel.author = "foo"
56
maker.channel.id = "http://example.com"
60
assert_not_set_error("maker.item", %w(updated)) do
61
Maker.make("atom:entry") do |maker|
62
maker.channel.author = "foo"
63
maker.channel.id = "http://example.com"
64
maker.channel.title = "Atom Feed"
68
assert_not_set_error("maker.item", %w(author)) do
69
Maker.make("atom:entry") do |maker|
70
maker.channel.id = "http://example.com"
71
maker.channel.title = "Atom Feed"
72
maker.channel.updated = Time.now
76
entry = Maker.make("atom:entry") do |maker|
77
maker.channel.author = "Foo"
78
maker.channel.id = "http://example.com"
79
maker.channel.title = "Atom Feed"
80
maker.channel.updated = Time.now
86
assert_maker_atom_persons("entry",
87
["channel", "authors"],
89
"maker.channel.author") do |maker|
90
setup_dummy_channel_atom(maker)
91
setup_dummy_item_atom(maker)
94
assert_maker_atom_persons("entry",
95
["items", "first", "authors"],
98
"maker.item", ["author"]) do |maker|
99
setup_dummy_channel_atom(maker)
100
setup_dummy_item_atom(maker)
101
maker.channel.authors.clear
102
maker.items.first.authors.clear
105
assert_maker_atom_persons("entry",
106
["items", "first", "source", "authors"],
107
["source", "authors"],
108
"maker.item.source.author") do |maker|
109
setup_dummy_channel_atom(maker)
110
setup_dummy_item_atom(maker)
115
assert_maker_atom_categories("entry",
116
["channel", "categories"],
118
"maker.channel.category") do |maker|
119
setup_dummy_channel_atom(maker)
120
setup_dummy_item_atom(maker)
123
assert_maker_atom_categories("entry",
124
["items", "first", "categories"],
126
"maker.item.category") do |maker|
127
setup_dummy_channel_atom(maker)
128
setup_dummy_item_atom(maker)
131
assert_maker_atom_categories("entry",
132
["items", "first", "source", "categories"],
133
["source", "categories"],
134
"maker.item.source.category") do |maker|
135
setup_dummy_channel_atom(maker)
136
setup_dummy_item_atom(maker)
141
assert_maker_atom_content("entry",
142
["items", "first", "content"],
144
"maker.item.content") do |maker|
145
setup_dummy_channel_atom(maker)
146
setup_dummy_item_atom(maker)
151
assert_maker_atom_persons("entry",
152
["channel", "contributors"],
154
"maker.channel.contributor") do |maker|
155
setup_dummy_channel_atom(maker)
156
setup_dummy_item_atom(maker)
159
assert_maker_atom_persons("entry",
160
["items", "first", "contributors"],
162
"maker.item.contributor") do |maker|
163
setup_dummy_channel_atom(maker)
164
setup_dummy_item_atom(maker)
167
assert_maker_atom_persons("entry",
168
["items", "first", "source", "contributors"],
169
["source", "contributors"],
170
"maker.item.source.contributor") do |maker|
171
setup_dummy_channel_atom(maker)
172
setup_dummy_item_atom(maker)
177
assert_maker_atom_links("entry",
178
["channel", "links"],
180
"maker.channel.link") do |maker|
181
setup_dummy_channel_atom(maker)
182
setup_dummy_item_atom(maker)
183
maker.channel.links.clear
184
maker.items.first.links.clear
187
assert_maker_atom_links("entry",
188
["items", "first", "links"],
190
"maker.item.link") do |maker|
191
setup_dummy_channel_atom(maker)
192
setup_dummy_item_atom(maker)
193
maker.channel.links.clear
194
maker.items.first.links.clear
197
assert_maker_atom_links("entry",
198
["items", "first", "source", "links"],
200
"maker.item.source.link", true) do |maker|
201
setup_dummy_channel_atom(maker)
202
setup_dummy_item_atom(maker)
207
assert_maker_atom_date_construct("entry",
208
["items", "first", "published"],
211
setup_dummy_channel_atom(maker)
212
setup_dummy_item_atom(maker)
217
assert_maker_atom_text_construct("entry",
218
["channel", "copyright"],
219
["rights"]) do |maker|
220
setup_dummy_channel_atom(maker)
221
setup_dummy_item_atom(maker)
224
assert_maker_atom_text_construct("entry",
225
["items", "first", "rights"],
227
nil, nil, "maker.item.rights"
229
setup_dummy_channel_atom(maker)
230
setup_dummy_item_atom(maker)
233
assert_maker_atom_text_construct("entry",
234
["items", "first", "source", "rights"],
235
["source", "rights"],
236
nil, nil, "maker.item.source.rights"
238
setup_dummy_channel_atom(maker)
239
setup_dummy_item_atom(maker)
244
def test_source_generator
245
assert_maker_atom_generator("entry",
246
["items", "first", "source", "generator"],
247
["source", "generator"],
248
"maker.item.source.generator") do |maker|
249
setup_dummy_channel_atom(maker)
250
setup_dummy_item_atom(maker)
255
assert_maker_atom_icon("entry",
256
["items", "first", "source", "icon"],
258
nil, "maker.item.source.icon") do |maker|
259
setup_dummy_channel_atom(maker)
260
setup_dummy_item_atom(maker)
265
assert_maker_atom_id("entry",
266
["items", "first", "source"],
268
"maker.item.source") do |maker|
269
setup_dummy_channel_atom(maker)
270
setup_dummy_item_atom(maker)
275
assert_maker_atom_logo("entry",
276
["items", "first", "source", "logo"],
279
"maker.item.source.logo") do |maker|
280
setup_dummy_channel_atom(maker)
281
setup_dummy_item_atom(maker)
285
def test_source_subtitle
286
assert_maker_atom_text_construct("entry",
287
["items", "first", "source", "subtitle"],
288
["source", "subtitle"],
290
"maker.item.source.subtitle") do |maker|
291
setup_dummy_channel_atom(maker)
292
setup_dummy_item_atom(maker)
297
assert_maker_atom_text_construct("entry",
298
["items", "first", "description"],
300
nil, nil, "maker.item.description"
302
setup_dummy_channel_atom(maker)
303
setup_dummy_item_atom(maker)
308
assert_maker_atom_text_construct("entry",
309
["channel", "title"], ["title"],
310
"maker.item", ["title"],
311
"maker.channel.title") do |maker|
312
setup_dummy_channel_atom(maker)
313
setup_dummy_item_atom(maker)
314
maker.channel.title = nil
315
maker.items.first.title = nil
318
assert_maker_atom_text_construct("entry",
319
["items", "first", "title"],
321
"maker.item", ["title"],
322
"maker.item.title") do |maker|
323
setup_dummy_channel_atom(maker)
324
setup_dummy_item_atom(maker)
325
maker.channel.title = nil
326
maker.items.first.title = nil
329
assert_maker_atom_text_construct("entry",
330
["items", "first", "source", "title"],
332
nil, nil, "maker.item.source.title"
334
setup_dummy_channel_atom(maker)
335
setup_dummy_item_atom(maker)
340
assert_maker_atom_date_construct("entry",
341
["channel", "updated"], ["updated"],
342
"maker.item", ["updated"]) do |maker|
343
setup_dummy_channel_atom(maker)
344
setup_dummy_item_atom(maker)
345
maker.channel.updated = nil
346
maker.items.first.updated = nil
349
assert_maker_atom_date_construct("entry",
350
["items", "first", "updated"],
352
"maker.item", ["updated"]) do |maker|
353
setup_dummy_channel_atom(maker)
354
setup_dummy_item_atom(maker)
355
maker.channel.updated = nil
356
maker.items.first.updated = nil
359
assert_maker_atom_date_construct("entry",
360
["items", "first", "source", "updated"],
361
["source", "updated"]) do |maker|
362
setup_dummy_channel_atom(maker)
363
setup_dummy_item_atom(maker)