como 0.0.2 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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