summaryrefslogtreecommitdiff
path: root/test/optparse/test_getopts.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/optparse/test_getopts.rb')
-rw-r--r--test/optparse/test_getopts.rb24
1 files changed, 22 insertions, 2 deletions
diff --git a/test/optparse/test_getopts.rb b/test/optparse/test_getopts.rb
index 025adfbfce..4cc8bdb651 100644
--- a/test/optparse/test_getopts.rb
+++ b/test/optparse/test_getopts.rb
@@ -5,7 +5,27 @@ class TestOptionParser < Test::Unit::TestCase
@opt = OptionParser.new
end
- def test_getopts
- assert_equal({'a' => true}, @opt.getopts(['-a'], "a"))
+ def test_short_noarg
+ o = @opt.getopts(%w[-a], "ab")
+ assert_equal(true, o['a'])
+ assert_equal(false, o['b'])
+ end
+
+ def test_short_arg
+ o = @opt.getopts(%w[-a1], "a:b:")
+ assert_equal("1", o['a'])
+ assert_equal(nil, o['b'])
+ end
+
+ def test_long_noarg
+ o = @opt.getopts(%w[--foo], "", "foo", "bar")
+ assert_equal(true, o['foo'])
+ assert_equal(false, o['bar'])
+ end
+
+ def test_long_arg
+ o = @opt.getopts(%w[--bar ZOT], "", "foo:FOO", "bar:BAR")
+ assert_equal("FOO", o['foo'])
+ assert_equal("ZOT", o['bar'])
end
end