~ubuntu-branches/ubuntu/hardy/ruby1.8/hardy-updates

« back to all changes in this revision

Viewing changes to test/rss/test_parser.rb

  • Committer: Bazaar Package Importer
  • Author(s): akira yamada
  • Date: 2007-03-13 22:11:58 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20070313221158-h3oql37brlaf2go2
Tags: 1.8.6-1
* new upstream version, 1.8.6.
* libruby1.8 conflicts with libopenssl-ruby1.8 (< 1.8.6) (closes: #410018)
* changed packaging style to cdbs from dbs.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
begin
 
2
  require "fileutils"
 
3
rescue LoadError
 
4
  module FileUtils
 
5
    module_function
 
6
    def rm_f(target)
 
7
      File.unlink(target)
 
8
    rescue Errno::ENOENT
 
9
    end
 
10
  end
 
11
end
 
12
 
 
13
require "rss-testcase"
 
14
 
 
15
require "rss/1.0"
 
16
require "rss/dublincore"
 
17
 
 
18
module RSS
 
19
  class TestParser < TestCase
 
20
    def setup
 
21
      @_default_parser = Parser.default_parser
 
22
      @rss10 = make_RDF(<<-EOR)
 
23
#{make_channel}
 
24
#{make_item}
 
25
#{make_textinput}
 
26
#{make_image}
 
27
EOR
 
28
      @rss_file = "rss10.rdf"
 
29
      File.open(@rss_file, "w") {|f| f.print(@rss10)}
 
30
    end
 
31
    
 
32
    def teardown
 
33
      Parser.default_parser = @_default_parser
 
34
      FileUtils.rm_f(@rss_file)
 
35
    end
 
36
 
 
37
    def test_default_parser
 
38
      assert_nothing_raised do
 
39
        Parser.default_parser = RSS::AVAILABLE_PARSERS.first
 
40
      end
 
41
 
 
42
      assert_raise(RSS::NotValidXMLParser) do
 
43
        Parser.default_parser = RSS::Parser
 
44
      end
 
45
    end
 
46
 
 
47
    def test_parse
 
48
      assert_not_nil(RSS::Parser.parse(@rss_file))
 
49
 
 
50
      garbage_rss_file = @rss_file + "-garbage"
 
51
      if RSS::Parser.default_parser.name == "RSS::XMLParserParser"
 
52
        assert_raise(RSS::NotWellFormedError) do
 
53
          RSS::Parser.parse(garbage_rss_file)
 
54
        end
 
55
      else
 
56
        assert_nil(RSS::Parser.parse(garbage_rss_file))
 
57
      end
 
58
    end
 
59
  end
 
60
end