зеркало из https://github.com/github/ruby.git
75 строки
1.5 KiB
Ruby
75 строки
1.5 KiB
Ruby
require 'rubygems'
|
|
require 'minitest/autorun'
|
|
require 'rdoc/options'
|
|
|
|
class TestRDocOptions < MiniTest::Unit::TestCase
|
|
|
|
def setup
|
|
@options = RDoc::Options.new
|
|
end
|
|
|
|
def test_parse_ignore_invalid
|
|
out, err = capture_io do
|
|
@options.parse %w[--ignore-invalid --bogus]
|
|
end
|
|
|
|
refute_match %r%^Usage: %, err
|
|
assert_match %r%^invalid options: --bogus%, err
|
|
end
|
|
|
|
def test_parse_ignore_invalid_default
|
|
out, err = capture_io do
|
|
@options.parse %w[--bogus --main BLAH]
|
|
end
|
|
|
|
refute_match %r%^Usage: %, err
|
|
assert_match %r%^invalid options: --bogus%, err
|
|
|
|
assert_equal 'BLAH', @options.main_page
|
|
end
|
|
|
|
def test_parse_ignore_invalid_no
|
|
out, err = capture_io do
|
|
assert_raises SystemExit do
|
|
@options.parse %w[--no-ignore-invalid --bogus]
|
|
end
|
|
end
|
|
|
|
assert_match %r%^Usage: %, err
|
|
assert_match %r%^invalid option: --bogus%, err
|
|
end
|
|
|
|
def test_parse_main
|
|
out, err = capture_io do
|
|
@options.parse %w[--main MAIN]
|
|
end
|
|
|
|
assert_empty out
|
|
assert_empty err
|
|
|
|
assert_equal 'MAIN', @options.main_page
|
|
end
|
|
|
|
def test_parse_dash_p
|
|
out, err = capture_io do
|
|
@options.parse %w[-p]
|
|
end
|
|
|
|
assert @options.pipe
|
|
refute_match %r%^Usage: %, err
|
|
refute_match %r%^invalid options%, err
|
|
end
|
|
|
|
def test_parse_dash_p_files
|
|
out, err = capture_io do
|
|
@options.parse %w[-p README]
|
|
end
|
|
|
|
refute @options.pipe
|
|
refute_match %r%^Usage: %, err
|
|
assert_match %r%^invalid options: -p .with files.%, err
|
|
end
|
|
|
|
end
|
|
|