test/test_rdoc_options.rb in rdoc-4.0.0 vs test/test_rdoc_options.rb in rdoc-4.0.1

- old
+ new

@@ -370,10 +370,24 @@ assert_equal 1, out.scan(/HTML generator options:/).length assert_equal 1, out.scan(/ri generator options:/). length assert_equal 1, out.scan(/test generator options:/).length end + def test_parse_format_for_extra_generator + RDoc::RDoc::GENERATORS['test'] = Class.new do + def self.setup_options options + op = options.option_parser + + op.separator 'test generator options:' + end + end + + @options.setup_generator 'test' + + assert_equal @options.generator_name, 'test' + end + def test_parse_ignore_invalid out, err = capture_io do @options.parse %w[--ignore-invalid --bogus] end @@ -407,10 +421,43 @@ assert_match %r%^invalid options: --bogus=arg, --bobogus, --visibility=extended%, err assert_empty out end + def test_parse_ignore_invalid_no_quiet + out, err = capture_io do + assert_raises SystemExit do + @options.parse %w[--quiet --no-ignore-invalid --bogus=arg --bobogus --visibility=extended] + end + end + + refute_match %r%^Usage: %, err + assert_match %r%^invalid options: --bogus=arg, --bobogus, --visibility=extended%, err + + assert_empty out + end + + def test_ignore_needless_arg + out, err = capture_io do + @options.parse %w[--ri=foo] + end + + assert_match %r%^invalid options: --ri=foo%, err + + assert_empty out + end + + def test_ignore_missing_arg + out, err = capture_io do + @options.parse %w[--copy-files] + end + + assert_match %r%^invalid options: --copy-files%, err + + assert_empty out + end + def test_parse_main out, err = capture_io do @options.parse %w[--main MAIN] end @@ -466,10 +513,17 @@ assert_equal Pathname('pages'), @options.page_dir assert_equal [abs_page_dir], @options.files end end + def test_parse_ri_site + @options.parse %w[--ri-site] + + assert_equal RDoc::Generator::RI, @options.generator + assert_equal RDoc::RI::Paths.site_dir, @options.op_dir + end + def test_parse_root assert_equal Pathname(Dir.pwd), @options.root out, err = capture_io do @options.parse %W[--root #{Dir.tmpdir}] @@ -635,9 +689,20 @@ assert File.exist? '.rdoc_options' assert_equal @options, YAML.load(File.read('.rdoc_options')) end + end + + def test_version + out, _ = capture_io do + begin + @options.parse %w[--version] + rescue SystemExit + end + end + + assert out.include?(RDoc::VERSION) end end