File: run_test_arg_parse.sh

package info (click to toggle)
libminc 2.4.03-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 4,268 kB
  • sloc: ansic: 57,089; cpp: 3,654; sh: 100; makefile: 21; ruby: 18
file content (45 lines) | stat: -rwxr-xr-x 1,918 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#! /bin/sh

#set -e

fail=no

check() { #args expected
    out=`./test_arg_parse $1`
    leftovers=`echo $out | sed "/^$2\$/d"`
    test -z "$leftovers" && return

    echo "Args    : $1"
    echo "Output  : $out"
    echo "Expected: $2"
    fail=yes
}


check ''                   'const_a:0 const_b:0 int_a:0 int_b:0 long_a:0 long_b:0'
check '-const_a'           'const_a:1 const_b:0 int_a:0 int_b:0 long_a:0 long_b:0'
check '-const_b'           'const_a:0 const_b:1 int_a:0 int_b:0 long_a:0 long_b:0'
check '-const_a -const_b'  'const_a:1 const_b:1 int_a:0 int_b:0 long_a:0 long_b:0'
check '-const_b -const_a'  'const_a:1 const_b:1 int_a:0 int_b:0 long_a:0 long_b:0'

check '-int_a 33'          'const_a:0 const_b:0 int_a:33 int_b:0 long_a:0 long_b:0'
check '-int_a -3'          'const_a:0 const_b:0 int_a:-3 int_b:0 long_a:0 long_b:0'
check '-int_b 22'          'const_a:0 const_b:0 int_a:0 int_b:22 long_a:0 long_b:0'
check '-int_b -2'          'const_a:0 const_b:0 int_a:0 int_b:-2 long_a:0 long_b:0'
check '-int_a -1 -int_b 3' 'const_a:0 const_b:0 int_a:-1 int_b:3 long_a:0 long_b:0'
check '-int_b -1 -int_a 3' 'const_a:0 const_b:0 int_a:3 int_b:-1 long_a:0 long_b:0'

check '-long_a 12'            'const_a:0 const_b:0 int_a:0 int_b:0 long_a:12 long_b:0'
check '-long_a -99'           'const_a:0 const_b:0 int_a:0 int_b:0 long_a:-99 long_b:0'
check '-long_b -12'           'const_a:0 const_b:0 int_a:0 int_b:0 long_a:0 long_b:-12'
check '-long_b 99'            'const_a:0 const_b:0 int_a:0 int_b:0 long_a:0 long_b:99'
check '-long_a 3 -long_b -9'  'const_a:0 const_b:0 int_a:0 int_b:0 long_a:3 long_b:-9'
check '-long_b 3 -long_a -9'  'const_a:0 const_b:0 int_a:0 int_b:0 long_a:-9 long_b:3'

check '-long_a -99 -int_b 3 -const_b'  'const_a:0 const_b:1 int_a:0 int_b:3 long_a:-99 long_b:0'

check '-nonsense'          'const_a:0 const_b:0 int_a:0 int_b:0 long_a:0 long_b:0'

test $fail = yes && exit 1
exit 0