getopt 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +7 -3
- data/README +13 -1
- data/test/tc_getopt_std.rb +8 -1
- metadata +2 -2
data/CHANGES
CHANGED
@@ -1,7 +1,11 @@
|
|
1
|
-
==
|
1
|
+
== 24-Oct-2005 - 1.2.0
|
2
|
+
* Altered the way multiple occurrences of the same switch are handled, for
|
3
|
+
those switches that accept arguments.
|
4
|
+
|
5
|
+
== 7-Oct-2005 - 1.1.0
|
2
6
|
* Changed parser, added a bit stricter enforcement
|
3
7
|
* Now handles squished arguments properly, e.g. "-ID" as well as "-I -D"
|
4
8
|
* Some test suite changes
|
5
9
|
|
6
|
-
== 5-Oct-2005
|
7
|
-
* Initial commit
|
10
|
+
== 5-Oct-2005 - 1.0.0
|
11
|
+
* Initial commit
|
data/README
CHANGED
@@ -32,6 +32,18 @@
|
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
35
|
+
== Class Methods
|
36
|
+
Std.getopts(switches)
|
37
|
+
Takes a series of single character switches that can be accepted on the
|
38
|
+
command line. Those characters followed by a ':' require an argument. The
|
39
|
+
rest are considered boolean switches. Returns a hash, with the switches
|
40
|
+
as the key (sans the leading '-'). For boolean switches, the value is
|
41
|
+
either true or false. Switches that were not passed on the command line
|
42
|
+
do not appear in the hash.
|
43
|
+
|
44
|
+
In the event that a switch that accepts an argument appears multiple times
|
45
|
+
the value for that key becomes an array of values.
|
46
|
+
|
35
47
|
== Future Plans
|
36
48
|
* Add a replacement for Getopt::Long.
|
37
49
|
|
@@ -59,4 +71,4 @@
|
|
59
71
|
== Author
|
60
72
|
Daniel J. Berger
|
61
73
|
djberg96 at gmail.com
|
62
|
-
imperator on IRC (freenode)
|
74
|
+
imperator on IRC (freenode)
|
data/test/tc_getopt_std.rb
CHANGED
@@ -18,7 +18,7 @@ include Getopt
|
|
18
18
|
class TC_Getopt_Std < Test::Unit::TestCase
|
19
19
|
|
20
20
|
def test_version
|
21
|
-
assert_equal("1.
|
21
|
+
assert_equal("1.2.0", Std::VERSION)
|
22
22
|
end
|
23
23
|
|
24
24
|
def test_getopts_basic
|
@@ -70,6 +70,13 @@ class TC_Getopt_Std < Test::Unit::TestCase
|
|
70
70
|
assert_raises(StdError){ Std.getopts("ID") }
|
71
71
|
end
|
72
72
|
|
73
|
+
# If a switch that accepts an argument appears more than once, the values
|
74
|
+
# are rolled into an array.
|
75
|
+
def test_getopts_switch_repeated
|
76
|
+
ARGV.push("-I", "-I", "-o", "hello", "-o", "world")
|
77
|
+
assert_equal({"o" => ["hello","world"], "I"=>true}, Std.getopts("o:ID"))
|
78
|
+
end
|
79
|
+
|
73
80
|
def test_getopts_expected_errors_basic
|
74
81
|
assert_raises(ArgumentError){ Std.getopts }
|
75
82
|
assert_raises(NoMethodError){ Std.getopts(0) }
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
|
|
3
3
|
specification_version: 1
|
4
4
|
name: getopt
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 1.
|
7
|
-
date: 2005-10-
|
6
|
+
version: 1.2.0
|
7
|
+
date: 2005-10-24 00:00:00 -06:00
|
8
8
|
summary: Getopt::Std for Ruby
|
9
9
|
require_paths:
|
10
10
|
- lib
|