como 0.0.2 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. data/CHANGELOG.rdoc +12 -0
  2. data/README.rdoc +11 -5
  3. data/Rakefile +6 -1
  4. data/doc/Como/ArgsParseState.html +912 -0
  5. data/doc/Como/ComoCommon.html +305 -0
  6. data/doc/Como/MainOpt.html +636 -0
  7. data/doc/Como/MasterOpt.html +636 -0
  8. data/doc/Como/Opt/ErrorWithData.html +304 -0
  9. data/doc/Como/Opt/InvalidOption.html +158 -0
  10. data/doc/Como/Opt/MissingArgument.html +158 -0
  11. data/doc/Como/Opt.html +6098 -0
  12. data/doc/Como/RuleCheck.html +933 -0
  13. data/doc/Como/RuleDisplay.html +1193 -0
  14. data/doc/Como/Spec.html +1750 -0
  15. data/doc/Como.html +625 -0
  16. data/doc/_index.html +242 -0
  17. data/doc/class_list.html +53 -0
  18. data/doc/css/common.css +1 -0
  19. data/doc/css/full_list.css +57 -0
  20. data/doc/css/style.css +338 -0
  21. data/doc/file.CHANGELOG.html +90 -0
  22. data/doc/file.README.html +94 -0
  23. data/doc/file.como.html +1962 -0
  24. data/doc/file_list.html +58 -0
  25. data/doc/frames.html +28 -0
  26. data/doc/index.html +94 -0
  27. data/doc/js/app.js +214 -0
  28. data/doc/js/full_list.js +178 -0
  29. data/doc/js/jquery.js +4 -0
  30. data/doc/method_list.html +838 -0
  31. data/doc/top-level-namespace.html +112 -0
  32. data/lib/como.rb +1660 -661
  33. data/test/como_compatible +37 -0
  34. data/test/como_config +44 -0
  35. data/test/como_options +36 -0
  36. data/test/como_queries +44 -0
  37. data/test/como_rule_1 +28 -0
  38. data/test/como_rule_2 +28 -0
  39. data/test/como_subcmd +72 -0
  40. data/test/como_subcmd_config +88 -0
  41. data/test/golden/compatible.txt +438 -0
  42. data/test/golden/config.txt +319 -0
  43. data/test/golden/options.txt +438 -0
  44. data/test/golden/queries.txt +78 -0
  45. data/test/golden/rule_1.txt +454 -0
  46. data/test/golden/rule_2.txt +476 -0
  47. data/test/golden/subcmd.txt +360 -0
  48. data/test/golden/subcmd_config.txt +534 -0
  49. data/test/test_como.rb +22 -328
  50. data/test/test_compatible +28 -0
  51. data/test/test_config +12 -0
  52. data/test/test_options +28 -0
  53. data/test/test_queries +7 -0
  54. data/test/test_rule_1 +27 -0
  55. data/test/test_rule_2 +27 -0
  56. data/test/test_subcmd +30 -0
  57. data/test/test_subcmd_config +31 -0
  58. metadata +62 -6
data/test/test_como.rb CHANGED
@@ -4,341 +4,35 @@ include Como
4
4
  require 'stringio'
5
5
 
6
6
 
7
- class ComoTest < Test::Unit::TestCase
8
-
9
- def reset_state( args )
10
- Spec.setArgv( args )
11
- Opt.each do |i|
12
- i.given = false
13
- end
14
- Spec.check
15
- end
16
-
17
- def test_sanity
7
+ # Test execution routine.
8
+ def runTest( test )
9
+ Dir.chdir( 'test' )
10
+ FileUtils.mkdir_p "result"
11
+ rf = "result/#{test}.txt"
12
+ gf = "golden/#{test}.txt"
18
13
 
19
- Opt.reset
20
- Spec.setArgv( %w{ -f file } )
21
-
22
- Spec.defineCheckHelp( "cmd_opt_test", "Programmer", "2013",
23
- [
24
- [ :silent, "help", "-h", "Display usage info." ],
25
- [ :single, "file", "-f", "File argument." ],
26
- ] )
14
+ system( "export RUBYLIB=../lib; . test_#{test} > #{rf}" )
27
15
 
28
- assert_equal( 'file', Opt['file'].value )
16
+ if false
17
+ # Populate golden files after inspection.
18
+ system( "cp #{rf} #{gf}" )
29
19
  end
30
-
31
-
32
- def test_values
33
-
34
- Opt.reset
35
- Spec.setArgv( %w{ -f file -d --o1 -o4 1 2 3 -o5 -o2 o2 rest } )
36
-
37
- Spec.defineCheckHelp( "como_fulltest", "Programmer", "2013",
38
- [
39
- [ :silent, "help", "-h", "Display usage info." ],
40
- [ :single, "file", "-f", "File argument." ],
41
- [ :switch, "o1", "-o1", "o1" ],
42
- [ :opt_single, "o2", "-o2", "o2" ],
43
- [ :opt_single, "o3", "-o3", "o3" ],
44
- [ :opt_multi, "o4", "-o4", "o4" ],
45
- [ :opt_any, "o5", "-o5", "o5" ],
46
- [ :switch, "debug", "-d", "Enable debugging." ],
47
- [ :default, "rest", nil, "Default options." ],
48
- ] )
49
-
50
- assert_equal( 'file', Opt['file'].value )
51
- assert_equal( true, Opt['debug'].given )
52
- assert_equal( true, Opt['o1'].given )
53
- assert_equal( true, Opt['o2'].given )
54
- assert_equal( 'o2', Opt['o2'].value )
55
- assert_equal( false, Opt['o3'].given )
56
- assert_equal( true, Opt['o4'].given )
57
- assert_equal( %w{1 2 3}, Opt['o4'].value )
58
- assert_equal( true, Opt['o5'].given )
59
- assert_equal( 1, Opt[nil].value.length )
60
- assert_equal( 'rest', Opt[nil].value[0] )
61
- end
62
-
63
-
64
- def test_rules
65
- Opt.reset
66
- Spec.setArgv( %w{ -o1 } )
67
-
68
- Spec.defineCheckHelp( "como_fulltest", "Programmer", "2013",
69
- [
70
- [ :silent, "help", "-h", "Display usage info." ],
71
- [ :switch, "o1", "-o1", "o1" ],
72
- [ :switch, "o2", "-o2", "o2" ],
73
- [ :switch, "o3", "-o3", "o3" ],
74
- [ :switch, "o4", "-o4", "o4" ],
75
- ] )
76
-
77
- # all
78
- reset_state( %w{ -o1 -o2 -o3} )
79
- ret = Opt.checkRule do
80
- all( 'o1', 'o2', 'o3' )
81
- end
82
- assert_equal( true, ret )
83
-
84
- reset_state( %w{ -o1 -o2 } )
85
- ret = Opt.checkRule do
86
- all( 'o1', 'o3' )
87
- end
88
- assert_equal( false, ret )
89
-
90
- # one
91
- reset_state( %w{ -o1 } )
92
- ret = Opt.checkRule do
93
- one( 'o1', 'o2' )
94
- end
95
- assert_equal( true, ret )
96
-
97
- reset_state( %w{ -o1 -o2 } )
98
- ret = Opt.checkRule do
99
- one( 'o1', 'o2' )
100
- end
101
- assert_equal( false, ret )
102
-
103
- # any
104
- reset_state( %w{ --o2 } )
105
- ret = Opt.checkRule do
106
- any( 'o1', 'o2' )
107
- end
108
- assert_equal( true, ret )
109
-
110
- reset_state( %w{ -o3 } )
111
- ret = Opt.checkRule do
112
- one( 'o1', 'o2' )
113
- end
114
- assert_equal( false, ret )
115
-
116
- # none
117
- reset_state( %w{ } )
118
- ret = Opt.checkRule do
119
- none
120
- end
121
- assert_equal( true, ret )
122
-
123
- reset_state( %w{ -o3 } )
124
- ret = Opt.checkRule do
125
- none
126
- end
127
- assert_equal( false, ret )
128
-
129
- # incr
130
- reset_state( %w{ -o1 -o2 -o3} )
131
- ret = Opt.checkRule do
132
- incr( 'o1', 'o2', 'o3' )
133
- end
134
- assert_equal( true, ret )
135
-
136
- reset_state( %w{ -o1 -o2} )
137
- ret = Opt.checkRule do
138
- incr( 'o1', 'o2', 'o3' )
139
- end
140
- assert_equal( true, ret )
141
-
142
- reset_state( %w{ -o1 -o3} )
143
- ret = Opt.checkRule do
144
- incr( 'o1', 'o2', 'o3' )
145
- end
146
- assert_equal( false, ret )
147
-
148
- # follow
149
- reset_state( %w{ -o1 -o2 -o3} )
150
- ret = Opt.checkRule do
151
- follow( 'o1', 'o2', 'o3' )
152
- end
153
- assert_equal( true, ret )
154
-
155
- reset_state( %w{ -o1 -o3 -o2} )
156
- ret = Opt.checkRule do
157
- follow( 'o1', 'o2', 'o3' )
158
- end
159
- assert_equal( true, ret )
160
-
161
- reset_state( %w{ -o2 -o3} )
162
- ret = Opt.checkRule do
163
- follow( 'o1', 'o2', 'o3' )
164
- end
165
- assert_equal( false, ret )
166
-
167
- reset_state( %w{-o1 -o3} )
168
- ret = Opt.checkRule do
169
- follow( 'o1', 'o2', 'o3' )
170
- end
171
- assert_equal( false, ret )
172
-
173
- # in combination
174
- reset_state( %w{-o2} )
175
- ret = Opt.checkRule do
176
- one(
177
- one( 'o1', 'o2' ),
178
- none
179
- )
180
- end
181
- assert_equal( true, ret )
182
-
183
- reset_state( %w{-o2 -o3} )
184
- ret = Opt.checkRule do
185
- all(
186
- one( 'o1', 'o2' ),
187
- 'o3'
188
- )
189
- end
190
- assert_equal( true, ret )
191
-
192
-
193
- reset_state( %w{-o2 -o3 -o4} )
194
- ret = Opt.checkRule do
195
- all(
196
- one( 'o1', 'o2' ),
197
- 'o3',
198
- incr( 'o3', 'o4' )
199
- )
200
- end
201
- assert_equal( true, ret )
202
-
203
-
204
- reset_state( %w{-o3 -o4} )
205
- ret = Opt.checkRule do
206
- all(
207
- one( 'o1', 'o2' ),
208
- 'o3',
209
- incr( 'o3', 'o4' )
210
- )
211
- end
212
- assert_equal( false, ret )
213
-
214
-
215
- end
216
-
217
-
218
- def test_external
219
- Opt.reset
220
- Spec.setArgv( %w{ -f file -- other_program -f other_file } )
221
-
222
- Spec.defineCheckHelp( "cmd_opt_test", "Programmer", "2013",
223
- [
224
- [ :silent, "help", "-h", "Display usage info." ],
225
- [ :single, "file", "-f", "File argument." ],
226
- ] )
227
-
228
- assert_equal( 'file', Opt['file'].value )
229
- assert_equal( %w{other_program -f other_file}, Opt.external )
230
- end
231
-
232
-
233
- def test_help
234
-
235
- Opt.reset
236
- Spec.setArgv( %w{ -h } )
237
- Opt.setIo( StringIO.new )
238
20
 
239
- Spec.defineCheckHelp( "cmd_opt_test", "Programmer", "2013",
240
- [
241
- [ :silent, "help", "-h", "Display usage info." ],
242
- [ :single, "file", "-f", "File argument." ],
243
- [ :opt_any, "list", "-l", "List argument." ],
244
- ], { :help_exit => false } )
245
-
246
- help = "
247
-
248
- Usage:
249
- cmd_opt_test -f <file> [-l <list>*]
250
-
251
- -f File argument.
252
- -l List argument.
253
-
254
-
255
- Copyright (c) 2013 by Programmer
256
-
257
- "
258
-
259
- assert_equal( help, Opt.getIo.string )
260
- end
261
-
262
-
263
- def test_missing
264
-
265
- Opt.reset
266
- Spec.setArgv( %w{ -l some args } )
267
- Opt.setIo( StringIO.new )
268
-
269
- Spec.defineCheckHelp( "cmd_opt_test", "Programmer", "2013",
270
- [
271
- [ :silent, "help", "-h", "Display usage info." ],
272
- [ :single, "file", "-f", "File argument." ],
273
- [ :opt_any, "list", "-l", "List argument." ],
274
- ], { :error_exit => false } )
275
-
276
- help = "
277
- cmd_opt_test error: Option \"-f\" missing...
278
-
279
-
280
- Usage:
281
- cmd_opt_test -f <file> [-l <list>*]
282
-
283
- -f File argument.
284
- -l List argument.
285
-
286
-
287
- Copyright (c) 2013 by Programmer
288
-
289
- "
290
-
291
- assert_equal( help, Opt.getIo.string )
292
-
293
- end
294
-
295
-
296
- def test_invalid_rule
297
-
298
- Opt.reset
299
- Spec.setArgv( %w{ -o1 } )
300
- Opt.setIo( StringIO.new )
301
-
302
- Spec.defineCheckHelp( "como_fulltest", "Programmer", "2013",
303
- [
304
- [ :silent, "help", "-h", "Display usage info." ],
305
- [ :switch, "o1", "-o1", "o1" ],
306
- [ :switch, "o2", "-o2", "o2" ],
307
- [ :switch, "o3", "-o3", "o3" ],
308
- [ :switch, "o4", "-o4", "o4" ],
309
- ], { :error_exit => false } )
310
-
311
- # all
312
- reset_state( %w{ -o1 -o2 } )
313
- ret = Spec.checkRule do
314
- all( 'o1', 'o2', 'o3' )
315
- end
316
-
317
- help = "
318
- como_fulltest error: Option combination mismatch!
319
-
320
- Option combination rules:
321
-
322
- |--# All of:
323
- | |--<o1>
324
- | |--<o2>
325
- | |--<o3>
326
-
327
-
328
- Usage:
329
- como_fulltest [-o1] [-o2] [-o3] [-o4]
330
-
331
- -o1 o1
332
- -o2 o2
333
- -o3 o3
334
- -o4 o4
21
+ assert( system( "diff #{rf} #{gf}" ), "FAILED: diff #{rf} #{gf}" )
335
22
 
23
+ Dir.chdir( '..' )
24
+ end
336
25
 
337
- Copyright (c) 2013 by Programmer
338
26
 
339
- "
27
+ class ComoTest < Test::Unit::TestCase
340
28
 
341
- assert_equal( help, Opt.getIo.string )
29
+ def test_options() runTest( "options" ); end
30
+ def test_queries() runTest( "queries" ); end
31
+ def test_config() runTest( "config" ); end
32
+ def test_rule_1() runTest( "rule_1" ); end
33
+ def test_rule_2() runTest( "rule_2" ); end
34
+ def test_subcmd() runTest( "subcmd" ); end
35
+ def test_subcmd_config() runTest( "subcmd_config" ); end
36
+ def test_compatible() runTest( "compatible" ); end
342
37
 
343
- end
344
38
  end
@@ -0,0 +1,28 @@
1
+ como_options
2
+ como_options --doc
3
+ como_options --doc -f
4
+ como_options --doc -f foo
5
+ como_options -f
6
+ como_options -f dii
7
+ como_options -f dii -d
8
+ como_options --file dii -d d1
9
+ como_options --file dii -d d1 d2
10
+ como_options --debug -f dii -d d1
11
+ como_options -f dii -d d1 --debug
12
+ como_options -f dii -d d1 --debug -m foo
13
+ como_options -f dii -d d1 --debug -m foo
14
+ como_options -f dii -d d1 --params foo=bar dii=duu
15
+ como_options -f dii -d d1 --params foo=bar dii=duu -t
16
+ como_options -f dii -d d1 --params foo=bar dii=duu -t duu dii
17
+ como_options -f dii -d d1 --params foo=bar dii=duu -t duu dii left over
18
+ como_options -f dii -d d1 -t --params foo=bar dii=duu left over
19
+ como_options -t duu dii --params foo=bar dii=duu -f dii -d d1 left over
20
+ como_options -f dii -d d1 -t duu dii --params foo=bar dii=duu - left over
21
+ como_options -f dii -d d1 -t duu dii - left over -- external arguments
22
+ como_options -f foo -- external arguments
23
+ como_options -f foo -t
24
+ como_options -q dii -f foo -t
25
+ como_options -d -q dii -f foo -t
26
+ como_options -f foo -d dir
27
+ como_options -f foo -d dir -h
28
+ como_options -h -f foo -d dir
data/test/test_config ADDED
@@ -0,0 +1,12 @@
1
+ como_config
2
+ como_config --doc
3
+ como_config --doc -f
4
+ como_config --doc -f foo
5
+ como_config -f
6
+ como_config -f dii
7
+ como_config -f dii -d
8
+ como_config --file dii -d d1
9
+ como_config --file dii -d d1 d2
10
+ como_config --debug -f dii -d d1
11
+ como_config -h
12
+ como_config -h --debug -f dii -d d1
data/test/test_options ADDED
@@ -0,0 +1,28 @@
1
+ como_options
2
+ como_options --doc
3
+ como_options --doc -f
4
+ como_options --doc -f foo
5
+ como_options -f
6
+ como_options -f dii
7
+ como_options -f dii -d
8
+ como_options --file dii -d d1
9
+ como_options --file dii -d d1 d2
10
+ como_options --debug -f dii -d d1
11
+ como_options -f dii -d d1 --debug
12
+ como_options -f dii -d d1 --debug -m foo
13
+ como_options -f dii -d d1 --debug -m foo
14
+ como_options -f dii -d d1 --params foo=bar dii=duu
15
+ como_options -f dii -d d1 --params foo=bar dii=duu -t
16
+ como_options -f dii -d d1 --params foo=bar dii=duu -t duu dii
17
+ como_options -f dii -d d1 --params foo=bar dii=duu -t duu dii left over
18
+ como_options -f dii -d d1 -t --params foo=bar dii=duu left over
19
+ como_options -t duu dii --params foo=bar dii=duu -f dii -d d1 left over
20
+ como_options -f dii -d d1 -t duu dii --params foo=bar dii=duu - left over
21
+ como_options -f dii -d d1 -t duu dii - left over -- external arguments
22
+ como_options -f foo -- external arguments
23
+ como_options -f foo -t
24
+ como_options -q dii -f foo -t
25
+ como_options -d -q dii -f foo -t
26
+ como_options -f foo -d dir
27
+ como_options -f foo -d dir -h
28
+ como_options -h -f foo -d dir
data/test/test_queries ADDED
@@ -0,0 +1,7 @@
1
+ como_queries
2
+ como_queries --doc
3
+ como_queries -m foo
4
+ como_queries --debug -m foo
5
+ como_queries --types t1 t2 t3
6
+ como_queries --types t1 t2 t3
7
+ como_queries --debug -m foo default parameter
data/test/test_rule_1 ADDED
@@ -0,0 +1,27 @@
1
+ como_rule_1
2
+ como_rule_1 --doc
3
+ como_rule_1 --doc -f
4
+ como_rule_1 --doc -f foo
5
+ como_rule_1 -f
6
+ como_rule_1 -f dii
7
+ como_rule_1 -f dii -m mode
8
+ como_rule_1 -f dii -d dii
9
+
10
+ como_rule_1 -m mode
11
+ como_rule_1 -m mode --debug
12
+ como_rule_1 -m mode --debug --params fii fuu
13
+
14
+ como_rule_1 --params fii fuu
15
+ como_rule_1 --params fii fuu --types foo bar
16
+ como_rule_1 --types foo bar --params fii fuu
17
+ como_rule_1 --types foo bar
18
+
19
+ como_rule_1 -
20
+ como_rule_1 - foo bar
21
+ como_rule_1 foo bar
22
+ como_rule_1 - foo bar -f file
23
+ como_rule_1 - foo bar -f file -d dir
24
+ como_rule_1 - foo bar -d dir
25
+
26
+ como_rule_1 - -f file -d dir
27
+ como_rule_1 -d dir
data/test/test_rule_2 ADDED
@@ -0,0 +1,27 @@
1
+ como_rule_2
2
+ como_rule_2 --doc
3
+ como_rule_2 --doc -f
4
+ como_rule_2 --doc -f foo
5
+ como_rule_2 -f
6
+ como_rule_2 -f dii
7
+ como_rule_2 -f dii -m mode
8
+ como_rule_2 -f dii -d dii
9
+
10
+ como_rule_2 -m mode
11
+ como_rule_2 -m mode --debug
12
+ como_rule_2 -m mode --debug --params fii fuu
13
+
14
+ como_rule_2 --params fii fuu
15
+ como_rule_2 --params fii fuu --types foo bar
16
+ como_rule_2 --types foo bar --params fii fuu
17
+ como_rule_2 --types foo bar
18
+
19
+ como_rule_2 -
20
+ como_rule_2 - foo bar
21
+ como_rule_2 foo bar
22
+ como_rule_2 - foo bar -f file
23
+ como_rule_2 - foo bar -f file -d dir
24
+ como_rule_2 - foo bar -d dir
25
+
26
+ como_rule_2 - -f file -d dir
27
+ como_rule_2 -d dir
data/test/test_subcmd ADDED
@@ -0,0 +1,30 @@
1
+ como_subcmd
2
+ como_subcmd -p passwd
3
+ como_subcmd add
4
+ como_subcmd add -f
5
+ como_subcmd add -f file
6
+ como_subcmd -p pass add -f file
7
+ como_subcmd -p pass -u name1 add -f file
8
+ como_subcmd -p pass -u name1 - add -f file
9
+
10
+ como_subcmd -p pass add -f file -u user
11
+ como_subcmd -p pass add -f file
12
+ como_subcmd -p pass add -f file -fo
13
+ como_subcmd -p pass add -f file -fo -h
14
+ como_subcmd -p pass add -f file -fo rm
15
+ como_subcmd add -f file -fo commit
16
+ como_subcmd -p pass add -f file -fo commit
17
+
18
+ como_subcmd -p pass rm
19
+ como_subcmd -p pass rm commit
20
+ como_subcmd -p pass rm -f commit
21
+
22
+ como_subcmd -p pass commit
23
+ como_subcmd -p pass commit dii duu
24
+ como_subcmd -p pass commit -u user1 dii duu
25
+ como_subcmd -p pass commit -u user1 dii duu -h
26
+ como_subcmd -p pass commit -h -u user1 dii duu
27
+ como_subcmd commit -h -u user1 dii duu -h
28
+ como_subcmd commit -u user1 dii duu -h
29
+
30
+ como_subcmd -p foo commit foo -- external arguments
@@ -0,0 +1,31 @@
1
+ como_subcmd_config
2
+ como_subcmd_config -p passwd
3
+ como_subcmd_config add
4
+ como_subcmd_config add -f
5
+ como_subcmd_config add -f file
6
+ como_subcmd_config -p pass add -f file
7
+ como_subcmd_config -p pass -u name1 add -f file
8
+ como_subcmd_config -p pass -u name1 - add -f file
9
+
10
+ como_subcmd_config -p pass add -f file -u user
11
+ como_subcmd_config -p pass add -f file
12
+ como_subcmd_config -p pass add -f file -fo
13
+ como_subcmd_config -p pass add -f file -fo -h
14
+ como_subcmd_config -p pass add -f file -fo rm
15
+ como_subcmd_config add -f file -fo commit
16
+ como_subcmd_config -p pass add -f file -fo commit
17
+
18
+ como_subcmd_config -p pass rm
19
+ como_subcmd_config -p pass rm -h
20
+ como_subcmd_config -p pass rm commit
21
+ como_subcmd_config -p pass rm -f commit
22
+
23
+ como_subcmd_config -p pass commit
24
+ como_subcmd_config -p pass commit dii duu
25
+ como_subcmd_config -p pass commit -u user1 dii duu
26
+ como_subcmd_config -p pass commit -u user1 dii duu -h
27
+ como_subcmd_config -p pass commit -h -u user1 dii duu
28
+ como_subcmd_config commit -h -u user1 dii duu
29
+ como_subcmd_config commit -u user1 dii duu -h
30
+
31
+ como_subcmd_config -p foo commit foo -- external arguments
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: como
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,24 +9,80 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-15 00:00:00.000000000 Z
12
+ date: 2013-12-30 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Como provides low manifest command line option parsing and deployment.
14
+ description: ! 'Como provides low manifest command line option parsing and deployment.
15
15
  The command line options are described in compact table format and option values
16
- are stored to conveniently named properties. Como provides the command usage information
17
- based on the option table (plus program info) automatically. Como supports also
18
- checking for option combinations using a simple DSL.
16
+ are stored to conveniently named properties. Como builds command usage information
17
+ based on the option
18
+
19
+ table (+ generic program info) and displays it automatically if necessary. Como
20
+ supports also subcommands and checking for option combinations using a simple DSL.'
19
21
  email: tero.isannainen@gmail.com
20
22
  executables: []
21
23
  extensions: []
22
24
  extra_rdoc_files:
23
25
  - README.rdoc
26
+ - CHANGELOG.rdoc
24
27
  files:
25
28
  - README.rdoc
29
+ - CHANGELOG.rdoc
26
30
  - LICENSE
27
31
  - Rakefile
28
32
  - lib/como.rb
33
+ - test/test_subcmd
29
34
  - test/test_como.rb
35
+ - test/como_rule_2
36
+ - test/test_config
37
+ - test/test_rule_1
38
+ - test/como_config
39
+ - test/test_subcmd_config
40
+ - test/test_compatible
41
+ - test/test_rule_2
42
+ - test/como_queries
43
+ - test/como_subcmd
44
+ - test/test_options
45
+ - test/como_subcmd_config
46
+ - test/como_rule_1
47
+ - test/test_queries
48
+ - test/como_options
49
+ - test/como_compatible
50
+ - test/golden/rule_1.txt
51
+ - test/golden/queries.txt
52
+ - test/golden/subcmd_config.txt
53
+ - test/golden/subcmd.txt
54
+ - test/golden/rule_2.txt
55
+ - test/golden/compatible.txt
56
+ - test/golden/config.txt
57
+ - test/golden/options.txt
58
+ - doc/top-level-namespace.html
59
+ - doc/js/full_list.js
60
+ - doc/js/app.js
61
+ - doc/js/jquery.js
62
+ - doc/index.html
63
+ - doc/css/common.css
64
+ - doc/css/full_list.css
65
+ - doc/css/style.css
66
+ - doc/Como.html
67
+ - doc/file.README.html
68
+ - doc/method_list.html
69
+ - doc/file_list.html
70
+ - doc/class_list.html
71
+ - doc/file.como.html
72
+ - doc/_index.html
73
+ - doc/Como/RuleCheck.html
74
+ - doc/Como/MainOpt.html
75
+ - doc/Como/MasterOpt.html
76
+ - doc/Como/RuleDisplay.html
77
+ - doc/Como/Opt.html
78
+ - doc/Como/ComoCommon.html
79
+ - doc/Como/Opt/MissingArgument.html
80
+ - doc/Como/Opt/ErrorWithData.html
81
+ - doc/Como/Opt/InvalidOption.html
82
+ - doc/Como/ArgsParseState.html
83
+ - doc/Como/Spec.html
84
+ - doc/file.CHANGELOG.html
85
+ - doc/frames.html
30
86
  homepage:
31
87
  licenses:
32
88
  - Ruby