rss 0.2.9 → 0.3.0

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.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/NEWS.md +38 -0
  3. data/README.md +11 -11
  4. data/lib/rss/itunes.rb +10 -1
  5. data/lib/rss/maker/itunes.rb +2 -0
  6. data/lib/rss/rss.rb +43 -15
  7. data/lib/rss/utils.rb +0 -18
  8. data/lib/rss/version.rb +1 -1
  9. data/lib/rss/xml-stylesheet.rb +3 -4
  10. data/lib/rss/xml.rb +3 -2
  11. data/lib/rss.rb +11 -11
  12. metadata +7 -101
  13. data/Gemfile +0 -6
  14. data/Rakefile +0 -15
  15. data/rss.gemspec +0 -30
  16. data/test/dot.png +0 -0
  17. data/test/rss-assertions.rb +0 -2116
  18. data/test/rss-testcase.rb +0 -479
  19. data/test/run-test.rb +0 -15
  20. data/test/test_1.0.rb +0 -308
  21. data/test/test_2.0.rb +0 -412
  22. data/test/test_accessor.rb +0 -104
  23. data/test/test_atom.rb +0 -684
  24. data/test/test_content.rb +0 -105
  25. data/test/test_dublincore.rb +0 -270
  26. data/test/test_image.rb +0 -215
  27. data/test/test_inherit.rb +0 -41
  28. data/test/test_itunes.rb +0 -360
  29. data/test/test_maker_0.9.rb +0 -477
  30. data/test/test_maker_1.0.rb +0 -519
  31. data/test/test_maker_2.0.rb +0 -758
  32. data/test/test_maker_atom_entry.rb +0 -394
  33. data/test/test_maker_atom_feed.rb +0 -455
  34. data/test/test_maker_content.rb +0 -48
  35. data/test/test_maker_dc.rb +0 -150
  36. data/test/test_maker_image.rb +0 -63
  37. data/test/test_maker_itunes.rb +0 -488
  38. data/test/test_maker_slash.rb +0 -38
  39. data/test/test_maker_sy.rb +0 -45
  40. data/test/test_maker_taxo.rb +0 -82
  41. data/test/test_maker_trackback.rb +0 -42
  42. data/test/test_maker_xml-stylesheet.rb +0 -84
  43. data/test/test_parser.rb +0 -122
  44. data/test/test_parser_1.0.rb +0 -529
  45. data/test/test_parser_2.0.rb +0 -123
  46. data/test/test_parser_atom_entry.rb +0 -164
  47. data/test/test_parser_atom_feed.rb +0 -277
  48. data/test/test_setup_maker_0.9.rb +0 -247
  49. data/test/test_setup_maker_1.0.rb +0 -551
  50. data/test/test_setup_maker_2.0.rb +0 -309
  51. data/test/test_setup_maker_atom_entry.rb +0 -410
  52. data/test/test_setup_maker_atom_feed.rb +0 -446
  53. data/test/test_setup_maker_itunes.rb +0 -146
  54. data/test/test_setup_maker_slash.rb +0 -39
  55. data/test/test_slash.rb +0 -65
  56. data/test/test_syndication.rb +0 -126
  57. data/test/test_taxonomy.rb +0 -173
  58. data/test/test_to_s.rb +0 -701
  59. data/test/test_trackback.rb +0 -136
  60. data/test/test_xml-stylesheet.rb +0 -109
@@ -1,394 +0,0 @@
1
- # frozen_string_literal: false
2
- require_relative "rss-testcase"
3
-
4
- require "rss/maker"
5
-
6
- module RSS
7
- class TestMakerAtomEntry < TestCase
8
- def test_supported?
9
- assert(RSS::Maker.supported?("atom:entry"))
10
- assert(RSS::Maker.supported?("atom1.0:entry"))
11
- assert(!RSS::Maker.supported?("atom2.0:entry"))
12
- end
13
-
14
- def test_find_class
15
- assert_equal(RSS::Maker::Atom::Entry, RSS::Maker["atom:entry"])
16
- assert_equal(RSS::Maker::Atom::Entry, RSS::Maker["atom1.0:entry"])
17
- end
18
-
19
- def test_root_element
20
- entry = Maker.make("atom:entry") do |maker|
21
- setup_dummy_channel_atom(maker)
22
- setup_dummy_item_atom(maker)
23
- end
24
- assert_equal(["atom", "1.0", "entry"], entry.feed_info)
25
-
26
- entry = Maker.make("atom:entry") do |maker|
27
- setup_dummy_channel_atom(maker)
28
- setup_dummy_item_atom(maker)
29
- maker.encoding = "EUC-JP"
30
- end
31
- assert_equal(["atom", "1.0", "entry"], entry.feed_info)
32
- assert_equal("EUC-JP", entry.encoding)
33
-
34
- entry = Maker.make("atom:entry") do |maker|
35
- setup_dummy_channel_atom(maker)
36
- setup_dummy_item_atom(maker)
37
- maker.standalone = "yes"
38
- end
39
- assert_equal(["atom", "1.0", "entry"], entry.feed_info)
40
- assert_equal("yes", entry.standalone)
41
-
42
- entry = Maker.make("atom:entry") do |maker|
43
- setup_dummy_channel_atom(maker)
44
- setup_dummy_item_atom(maker)
45
- maker.encoding = "EUC-JP"
46
- maker.standalone = "yes"
47
- end
48
- assert_equal(["atom", "1.0", "entry"], entry.feed_info)
49
- assert_equal("EUC-JP", entry.encoding)
50
- assert_equal("yes", entry.standalone)
51
- end
52
-
53
- def test_invalid_feed
54
- assert_not_set_error("maker.item", %w(id title author updated)) do
55
- Maker.make("atom:entry") do |maker|
56
- end
57
- end
58
-
59
- assert_not_set_error("maker.item", %w(id title updated)) do
60
- Maker.make("atom:entry") do |maker|
61
- maker.channel.author = "foo"
62
- end
63
- end
64
-
65
- assert_not_set_error("maker.item", %w(title updated)) do
66
- Maker.make("atom:entry") do |maker|
67
- maker.channel.author = "foo"
68
- maker.channel.id = "http://example.com"
69
- end
70
- end
71
-
72
- assert_not_set_error("maker.item", %w(updated)) do
73
- Maker.make("atom:entry") do |maker|
74
- maker.channel.author = "foo"
75
- maker.channel.id = "http://example.com"
76
- maker.channel.title = "Atom Feed"
77
- end
78
- end
79
-
80
- assert_not_set_error("maker.item", %w(author)) do
81
- Maker.make("atom:entry") do |maker|
82
- maker.channel.id = "http://example.com"
83
- maker.channel.title = "Atom Feed"
84
- maker.channel.updated = Time.now
85
- end
86
- end
87
-
88
- entry = Maker.make("atom:entry") do |maker|
89
- maker.channel.author = "Foo"
90
- maker.channel.id = "http://example.com"
91
- maker.channel.title = "Atom Feed"
92
- maker.channel.updated = Time.now
93
- end
94
- assert_not_nil(entry)
95
- end
96
-
97
- def test_author
98
- assert_maker_atom_persons("entry",
99
- ["channel", "authors"],
100
- ["authors"],
101
- "maker.channel.author") do |maker|
102
- setup_dummy_channel_atom(maker)
103
- setup_dummy_item_atom(maker)
104
- end
105
-
106
- assert_maker_atom_persons("entry",
107
- ["items", "first", "authors"],
108
- ["authors"],
109
- "maker.item.author",
110
- "maker.item", ["author"]) do |maker|
111
- setup_dummy_channel_atom(maker)
112
- setup_dummy_item_atom(maker)
113
- maker.channel.authors.clear
114
- maker.items.first.authors.clear
115
- end
116
-
117
- assert_maker_atom_persons("entry",
118
- ["items", "first", "source", "authors"],
119
- ["source", "authors"],
120
- "maker.item.source.author") do |maker|
121
- setup_dummy_channel_atom(maker)
122
- setup_dummy_item_atom(maker)
123
- end
124
- end
125
-
126
- def test_category
127
- assert_maker_atom_categories("entry",
128
- ["channel", "categories"],
129
- ["categories"],
130
- "maker.channel.category") do |maker|
131
- setup_dummy_channel_atom(maker)
132
- setup_dummy_item_atom(maker)
133
- end
134
-
135
- assert_maker_atom_categories("entry",
136
- ["items", "first", "categories"],
137
- ["categories"],
138
- "maker.item.category") do |maker|
139
- setup_dummy_channel_atom(maker)
140
- setup_dummy_item_atom(maker)
141
- end
142
-
143
- assert_maker_atom_categories("entry",
144
- ["items", "first", "source", "categories"],
145
- ["source", "categories"],
146
- "maker.item.source.category") do |maker|
147
- setup_dummy_channel_atom(maker)
148
- setup_dummy_item_atom(maker)
149
- end
150
- end
151
-
152
- def test_content
153
- assert_maker_atom_content("entry",
154
- ["items", "first", "content"],
155
- ["content"],
156
- "maker.item.content") do |maker|
157
- setup_dummy_channel_atom(maker)
158
- setup_dummy_item_atom(maker)
159
- end
160
- end
161
-
162
- def test_contributor
163
- assert_maker_atom_persons("entry",
164
- ["channel", "contributors"],
165
- ["contributors"],
166
- "maker.channel.contributor") do |maker|
167
- setup_dummy_channel_atom(maker)
168
- setup_dummy_item_atom(maker)
169
- end
170
-
171
- assert_maker_atom_persons("entry",
172
- ["items", "first", "contributors"],
173
- ["contributors"],
174
- "maker.item.contributor") do |maker|
175
- setup_dummy_channel_atom(maker)
176
- setup_dummy_item_atom(maker)
177
- end
178
-
179
- assert_maker_atom_persons("entry",
180
- ["items", "first", "source", "contributors"],
181
- ["source", "contributors"],
182
- "maker.item.source.contributor") do |maker|
183
- setup_dummy_channel_atom(maker)
184
- setup_dummy_item_atom(maker)
185
- end
186
- end
187
-
188
- def test_link
189
- assert_maker_atom_links("entry",
190
- ["channel", "links"],
191
- ["links"],
192
- "maker.channel.link") do |maker|
193
- setup_dummy_channel_atom(maker)
194
- setup_dummy_item_atom(maker)
195
- maker.channel.links.clear
196
- maker.items.first.links.clear
197
- end
198
-
199
- assert_maker_atom_links("entry",
200
- ["items", "first", "links"],
201
- ["links"],
202
- "maker.item.link") do |maker|
203
- setup_dummy_channel_atom(maker)
204
- setup_dummy_item_atom(maker)
205
- maker.channel.links.clear
206
- maker.items.first.links.clear
207
- end
208
-
209
- assert_maker_atom_links("entry",
210
- ["items", "first", "source", "links"],
211
- ["source", "links"],
212
- "maker.item.source.link", true) do |maker|
213
- setup_dummy_channel_atom(maker)
214
- setup_dummy_item_atom(maker)
215
- end
216
- end
217
-
218
- def test_published
219
- assert_maker_atom_date_construct("entry",
220
- ["items", "first", "published"],
221
- ["published"]
222
- ) do |maker|
223
- setup_dummy_channel_atom(maker)
224
- setup_dummy_item_atom(maker)
225
- end
226
- end
227
-
228
- def test_rights
229
- assert_maker_atom_text_construct("entry",
230
- ["channel", "copyright"],
231
- ["rights"]) do |maker|
232
- setup_dummy_channel_atom(maker)
233
- setup_dummy_item_atom(maker)
234
- end
235
-
236
- assert_maker_atom_text_construct("entry",
237
- ["items", "first", "rights"],
238
- ["rights"],
239
- nil, nil, "maker.item.rights"
240
- ) do |maker|
241
- setup_dummy_channel_atom(maker)
242
- setup_dummy_item_atom(maker)
243
- end
244
-
245
- assert_maker_atom_text_construct("entry",
246
- ["items", "first", "source", "rights"],
247
- ["source", "rights"],
248
- nil, nil, "maker.item.source.rights"
249
- ) do |maker|
250
- setup_dummy_channel_atom(maker)
251
- setup_dummy_item_atom(maker)
252
- end
253
- end
254
-
255
-
256
- def test_source_generator
257
- assert_maker_atom_generator("entry",
258
- ["items", "first", "source", "generator"],
259
- ["source", "generator"],
260
- "maker.item.source.generator") do |maker|
261
- setup_dummy_channel_atom(maker)
262
- setup_dummy_item_atom(maker)
263
- end
264
- end
265
-
266
- def test_source_icon
267
- assert_maker_atom_icon("entry",
268
- ["items", "first", "source", "icon"],
269
- ["source", "icon"],
270
- nil, "maker.item.source.icon") do |maker|
271
- setup_dummy_channel_atom(maker)
272
- setup_dummy_item_atom(maker)
273
- end
274
- end
275
-
276
- def test_source_id
277
- assert_maker_atom_id("entry",
278
- ["items", "first", "source"],
279
- ["source"],
280
- "maker.item.source") do |maker|
281
- setup_dummy_channel_atom(maker)
282
- setup_dummy_item_atom(maker)
283
- end
284
- end
285
-
286
- def test_source_logo
287
- assert_maker_atom_logo("entry",
288
- ["items", "first", "source", "logo"],
289
- ["source", "logo"],
290
- nil,
291
- "maker.item.source.logo") do |maker|
292
- setup_dummy_channel_atom(maker)
293
- setup_dummy_item_atom(maker)
294
- end
295
- end
296
-
297
- def test_source_subtitle
298
- assert_maker_atom_text_construct("entry",
299
- ["items", "first", "source", "subtitle"],
300
- ["source", "subtitle"],
301
- nil, nil,
302
- "maker.item.source.subtitle") do |maker|
303
- setup_dummy_channel_atom(maker)
304
- setup_dummy_item_atom(maker)
305
- end
306
- end
307
-
308
- def test_summary
309
- assert_maker_atom_text_construct("entry",
310
- ["items", "first", "description"],
311
- ["summary"],
312
- nil, nil, "maker.item.description"
313
- ) do |maker|
314
- setup_dummy_channel_atom(maker)
315
- setup_dummy_item_atom(maker)
316
- end
317
- end
318
-
319
- def test_title
320
- assert_maker_atom_text_construct("entry",
321
- ["channel", "title"], ["title"],
322
- "maker.item", ["title"],
323
- "maker.channel.title") do |maker|
324
- setup_dummy_channel_atom(maker)
325
- setup_dummy_item_atom(maker)
326
- maker.channel.title = nil
327
- maker.items.first.title = nil
328
- end
329
-
330
- assert_maker_atom_text_construct("entry",
331
- ["items", "first", "title"],
332
- ["title"],
333
- "maker.item", ["title"],
334
- "maker.item.title") do |maker|
335
- setup_dummy_channel_atom(maker)
336
- setup_dummy_item_atom(maker)
337
- maker.channel.title = nil
338
- maker.items.first.title = nil
339
- end
340
-
341
- assert_maker_atom_text_construct("entry",
342
- ["items", "first", "source", "title"],
343
- ["source", "title"],
344
- nil, nil, "maker.item.source.title"
345
- ) do |maker|
346
- setup_dummy_channel_atom(maker)
347
- setup_dummy_item_atom(maker)
348
- end
349
- end
350
-
351
- def test_updated
352
- assert_maker_atom_date_construct("entry",
353
- ["channel", "updated"], ["updated"],
354
- "maker.item", ["updated"]) do |maker|
355
- setup_dummy_channel_atom(maker)
356
- setup_dummy_item_atom(maker)
357
- maker.channel.updated = nil
358
- maker.items.first.updated = nil
359
- end
360
-
361
- assert_maker_atom_date_construct("entry",
362
- ["items", "first", "updated"],
363
- ["updated"],
364
- "maker.item", ["updated"]) do |maker|
365
- setup_dummy_channel_atom(maker)
366
- setup_dummy_item_atom(maker)
367
- maker.channel.updated = nil
368
- maker.items.first.updated = nil
369
- end
370
-
371
- assert_maker_atom_date_construct("entry",
372
- ["items", "first", "source", "updated"],
373
- ["source", "updated"]) do |maker|
374
- setup_dummy_channel_atom(maker)
375
- setup_dummy_item_atom(maker)
376
- end
377
- end
378
-
379
- def test_date
380
- date = Time.parse("2004/11/1 10:10")
381
- feed = Maker.make("atom:entry") do |maker|
382
- setup_dummy_channel_atom(maker)
383
- maker.channel.date = nil
384
- maker.items.new_item do |item|
385
- item.link = "http://example.com/article.html"
386
- item.title = "Sample Article"
387
- item.date = date
388
- end
389
- end
390
- assert_equal(date, feed.items[0].updated.content)
391
- assert_equal([date], feed.items[0].dc_dates.collect {|_date| _date.value})
392
- end
393
- end
394
- end