~ubuntu-branches/ubuntu/intrepid/ruby1.9/intrepid-updates

« back to all changes in this revision

Viewing changes to test/rss/test_maker_1.0.rb

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2007-09-04 16:01:17 UTC
  • mfrom: (1.1.8 upstream)
  • Revision ID: james.westby@ubuntu.com-20070904160117-i15zckg2nhxe9fyw
Tags: 1.9.0+20070830-2ubuntu1
* Sync from Debian; remaining changes:
  - Add -g to CFLAGS.
* Fixes build failure on ia64.
* Fixes build failure with gcc-4.2 on lpia.
* Robustify check for target_os, fixing build failure on lpia.
* Set Ubuntu maintainer address.

Show diffs side-by-side

added added

removed removed

Lines of Context:
209
209
      end
210
210
    end
211
211
 
212
 
    def test_items
 
212
    def test_items(with_convenience_way=true)
213
213
      title = "TITLE"
214
214
      link = "http://hoge.com/"
215
215
      description = "text hoge fuga"
242
242
        setup_dummy_channel(maker)
243
243
        
244
244
        item_size.times do |i|
245
 
          maker.items.new_item do |item|
246
 
            item.title = "#{title}#{i}"
247
 
            item.link = "#{link}#{i}"
248
 
            item.description = "#{description}#{i}"
 
245
          maker.items.new_item do |_item|
 
246
            _item.title = "#{title}#{i}"
 
247
            _item.link = "#{link}#{i}"
 
248
            _item.description = "#{description}#{i}"
249
249
          end
250
250
        end
251
251
        maker.items.do_sort = true
252
252
      end
253
253
      assert_equal(item_size, rss.items.size)
254
 
      rss.items.each_with_index do |item, i|
255
 
        assert_equal("#{link}#{i}", item.about)
256
 
        assert_equal("#{title}#{i}", item.title)
257
 
        assert_equal("#{link}#{i}", item.link)
258
 
        assert_equal("#{description}#{i}", item.description)
 
254
      rss.items.each_with_index do |_item, i|
 
255
        assert_equal("#{link}#{i}", _item.about)
 
256
        assert_equal("#{title}#{i}", _item.title)
 
257
        assert_equal("#{link}#{i}", _item.link)
 
258
        assert_equal("#{description}#{i}", _item.description)
259
259
      end
260
260
 
261
261
      rss = RSS::Maker.make("1.0") do |maker|
262
262
        setup_dummy_channel(maker)
263
263
        
264
264
        item_size.times do |i|
265
 
          maker.items.new_item do |item|
266
 
            item.title = "#{title}#{i}"
267
 
            item.link = "#{link}#{i}"
268
 
            item.description = "#{description}#{i}"
 
265
          maker.items.new_item do |_item|
 
266
            _item.title = "#{title}#{i}"
 
267
            _item.link = "#{link}#{i}"
 
268
            _item.description = "#{description}#{i}"
269
269
          end
270
270
        end
271
271
        maker.items.do_sort = Proc.new do |x, y|
272
 
          y.title.content[-1] <=> x.title.content[-1]
 
272
          if with_convenience_way
 
273
            y.title[-1] <=> x.title[-1]
 
274
          else
 
275
            y.title {|t| t.content[-1]} <=> x.title {|t| t.content[-1]}
 
276
          end
273
277
        end
274
278
      end
275
279
      assert_equal(item_size, rss.items.size)
276
 
      rss.items.reverse.each_with_index do |item, i|
277
 
        assert_equal("#{link}#{i}", item.about)
278
 
        assert_equal("#{title}#{i}", item.title)
279
 
        assert_equal("#{link}#{i}", item.link)
280
 
        assert_equal("#{description}#{i}", item.description)
 
280
      rss.items.reverse.each_with_index do |_item, i|
 
281
        assert_equal("#{link}#{i}", _item.about)
 
282
        assert_equal("#{title}#{i}", _item.title)
 
283
        assert_equal("#{link}#{i}", _item.link)
 
284
        assert_equal("#{description}#{i}", _item.description)
281
285
      end
282
286
 
283
287
      max_size = item_size / 2
285
289
        setup_dummy_channel(maker)
286
290
        
287
291
        item_size.times do |i|
288
 
          maker.items.new_item do |item|
289
 
            item.title = "#{title}#{i}"
290
 
            item.link = "#{link}#{i}"
291
 
            item.description = "#{description}#{i}"
 
292
          maker.items.new_item do |_item|
 
293
            _item.title = "#{title}#{i}"
 
294
            _item.link = "#{link}#{i}"
 
295
            _item.description = "#{description}#{i}"
292
296
          end
293
297
        end
294
298
        maker.items.max_size = max_size
295
299
      end
296
300
      assert_equal(max_size, rss.items.size)
297
 
      rss.items.each_with_index do |item, i|
298
 
        assert_equal("#{link}#{i}", item.about)
299
 
        assert_equal("#{title}#{i}", item.title)
300
 
        assert_equal("#{link}#{i}", item.link)
301
 
        assert_equal("#{description}#{i}", item.description)
 
301
      rss.items.each_with_index do |_item, i|
 
302
        assert_equal("#{link}#{i}", _item.about)
 
303
        assert_equal("#{title}#{i}", _item.title)
 
304
        assert_equal("#{link}#{i}", _item.link)
 
305
        assert_equal("#{description}#{i}", _item.description)
302
306
      end
303
307
 
304
308
      max_size = 0
307
311
          setup_dummy_channel(maker)
308
312
 
309
313
          item_size.times do |i|
310
 
            maker.items.new_item do |item|
311
 
              item.title = "#{title}#{i}"
312
 
              item.link = "#{link}#{i}"
313
 
              item.description = "#{description}#{i}"
 
314
            maker.items.new_item do |_item|
 
315
              _item.title = "#{title}#{i}"
 
316
              _item.link = "#{link}#{i}"
 
317
              _item.description = "#{description}#{i}"
314
318
            end
315
319
          end
316
320
          maker.items.max_size = max_size
322
326
        setup_dummy_channel(maker)
323
327
        
324
328
        item_size.times do |i|
325
 
          maker.items.new_item do |item|
326
 
            item.title = "#{title}#{i}"
327
 
            item.link = "#{link}#{i}"
328
 
            item.description = "#{description}#{i}"
 
329
          maker.items.new_item do |_item|
 
330
            _item.title = "#{title}#{i}"
 
331
            _item.link = "#{link}#{i}"
 
332
            _item.description = "#{description}#{i}"
329
333
          end
330
334
        end
331
335
        maker.items.max_size = max_size
332
336
      end
333
337
      assert_equal(item_size + max_size + 1, rss.items.size)
334
 
      rss.items.each_with_index do |item, i|
335
 
        assert_equal("#{link}#{i}", item.about)
336
 
        assert_equal("#{title}#{i}", item.title)
337
 
        assert_equal("#{link}#{i}", item.link)
338
 
        assert_equal("#{description}#{i}", item.description)
 
338
      rss.items.each_with_index do |_item, i|
 
339
        assert_equal("#{link}#{i}", _item.about)
 
340
        assert_equal("#{title}#{i}", _item.title)
 
341
        assert_equal("#{link}#{i}", _item.link)
 
342
        assert_equal("#{description}#{i}", _item.description)
339
343
      end
340
344
    end
341
345
 
 
346
    def test_items_with_new_api_since_018
 
347
      test_items(false)
 
348
    end
 
349
 
342
350
    def test_not_valid_items
343
351
      title = "TITLE"
344
352
      link = "http://hoge.com/"