Results for ysh-stdlib-args.test.sh

statusysh
pass 1
FAIL 8
total9
caseyshdescription
0FAIL args.ysh example usage
details
1FAIL Bool flag, positional args, more positional
details
2FAIL Test multiple ARGVs against a parser
details
3FAIL Basic help message
details
4pass Compare parseArgs() vs Python argparse
5FAIL Define spec and print it
details
6FAIL Default values
details
7FAIL Duplicate argument/flag names
details
8FAIL Error cases
details
1 passed, 0 OK, 0 not implemented, 0 BUG, 8 failed, 0 timeouts, 0 cases skipped
8 failed under osh

Details on runs that didn't PASS

ysh0 args.ysh example usage

[ysh stdout] Expected 'Verbose false\n(Dict) {"src":"mysrc","max-procs":12,"dest":"mydest","files":["a","b","c"],"verbose":false,"invert":true}\n' Got ''
[ysh status] Expected 0, got 1

stdout:
stderr: 
    flag -v --verbose (help="Verbosely")  # default is Bool, false
                      ^
[ stdin ]:4: fatal: 'flag' appears to be external. External commands don't accept typed args (OILS-ERR-200)
ysh1 Bool flag, positional args, more positional

[ysh stdout] Expected '(Dict) {"verbose":true,"src":"src/path","dst":"dst/path","more":["x","y","z"]}\nsrc/path -> dst/path\nx\ny\nz\n' Got ''
[ysh status] Expected 0, got 1

stdout:
stderr: 
    flag -v --verbose ('bool')
                      ^
[ stdin ]:4: fatal: 'flag' appears to be external. External commands don't accept typed args (OILS-ERR-200)
ysh2 Test multiple ARGVs against a parser

[ysh stdout] Expected '---------- -v --count 120 example.sh ----------\n$ bin/ysh example.sh -v --count 120 example.sh\n(Dict) {"verbose":true,"count":120,"file":"example.sh"}\n\n---------- -v --count 120 example.sh -v ----------\n$ bin/ysh example.sh -v --count 120 example.sh -v\n(Dict) {"verbose":true,"count":120,"file":"example.sh"}\n\n---------- -v --count 120 example.sh -v --count 150 ----------\n$ bin/ysh example.sh -v --count 120 example.sh -v --count 150\n(Dict) {"verbose":true,"count":150,"file":"example.sh"}\n\n' Got ''
[ysh status] Expected 0, got 1

stdout:
stderr: 
    flag -v --verbose ('bool', default=false)
                      ^
[ stdin ]:4: fatal: 'flag' appears to be external. External commands don't accept typed args (OILS-ERR-200)
ysh3 Basic help message

[ysh stdout] Expected 'usage: program-name [-h] [-v] src dst\n\nReference Implementation\n\npositional arguments:\n src\n dst\n\noptions:\n -h, --help show this help message and exit\n -v, --verbose Verbose\n' Got ''
[ysh status] Expected 0, got 127

stdout:
stderr: 
    description '''
    ^~~~~~~~~~~
[ stdin ]:4: 'description' not found (OILS-ERR-100)
[ stdin ]:4: errexit PID 5070: command.Simple failed with status 127
ysh5 Define spec and print it

[ysh stdout] Expected '{\n "flags": [\n {\n "short": "-v",\n "long": "--verbose",\n "name": "verbose",\n "type": "bool",\n "default": false,\n "help": null\n }\n ],\n "args": [\n {\n "name": "src",\n "help": null\n },\n {\n "name": "dst",\n "help": null\n }\n ],\n "rest": "more"\n}\n' Got ''
[ysh status] Expected 0, got 1

stdout:
stderr: 
    flag -v --verbose ('bool')
                      ^
[ stdin ]:4: fatal: 'flag' appears to be external. External commands don't accept typed args (OILS-ERR-200)
ysh6 Default values

[ysh stdout] Expected '(Dict) {"sanitize":false,"verbose":false,"max-procs":null}\n' Got ''
[ysh status] Expected 0, got 1

stdout:
stderr: 
    flag -S --sanitize ('bool', default=false)
                       ^
[ stdin ]:4: fatal: 'flag' appears to be external. External commands don't accept typed args (OILS-ERR-200)
ysh7 Duplicate argument/flag names

[ysh stdout] Expected 'status=3\nstatus=3\nstatus=3\n', got 'status=127\nstatus=127\nstatus=127\n'

stdout:
status=127
status=127
status=127
stderr:
      flag -n --name
      ^~~~
[ stdin ]:5: 'flag' not found (OILS-ERR-100)
      flag -n --name
      ^~~~
[ stdin ]:13: 'flag' not found (OILS-ERR-100)
      arg name
      ^~~
[ stdin ]:21: 'arg' not found (OILS-ERR-100)
ysh8 Error cases

[ysh stdout] Expected 'status=2\nstatus=2\nstatus=2\nstatus=2\nstatus=2\nstatus=2\n' Got ''
[ysh status] Expected 0, got 127

stdout:
stderr: 
    flag -v --verbose
    ^~~~
[ stdin ]:4: 'flag' not found (OILS-ERR-100)
[ stdin ]:4: errexit PID 5088: command.Simple failed with status 127