summaryrefslogtreecommitdiff
path: root/test/optparse/test_optparse.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/optparse/test_optparse.rb')
-rw-r--r--test/optparse/test_optparse.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/optparse/test_optparse.rb b/test/optparse/test_optparse.rb
index 5f5ea183b0..285c4a5d1b 100644
--- a/test/optparse/test_optparse.rb
+++ b/test/optparse/test_optparse.rb
@@ -98,6 +98,18 @@ class TestOptionParser < Test::Unit::TestCase
assert_raise(OptionParser::InvalidOption) {@opt.parse(%w(-z foo))}
end
+ def test_raise_unknown
+ @opt.def_option('--foo [ARG]') {|arg| @foo = arg}
+ assert @opt.raise_unknown
+
+ @opt.raise_unknown = false
+ assert_equal(%w[--bar], @opt.parse(%w[--foo --bar]))
+ assert_nil(@foo)
+
+ assert_equal(%w[--bar], @opt.parse(%w[--foo x --bar]))
+ assert_equal("x", @foo)
+ end
+
def test_nonopt_pattern
@opt.def_option(/^[^-]/) do |arg|
assert(false, "Never gets called")