sbase

suckless unix tools
git clone git://git.suckless.org/sbase
Log | Files | Refs | README | LICENSE

0028-dc.sh (1984B)


      1 #!/bin/sh
      2 
      3 tmp=$$.tmp
      4 
      5 trap 'rm -f $tmp' EXIT
      6 trap 'exit $?' HUP INT TERM
      7 
      8 # Test - command: subtraction
      9 cat <<EOF >$tmp
     10 test 1:
     11 -1
     12 test 2:
     13 0
     14 test 3:
     15 1
     16 test 4:
     17 0
     18 test 5:
     19 0
     20 test 6:
     21 13
     22 test 7:
     23 13
     24 test 8:
     25 -13
     26 test 9:
     27 -13
     28 test 10:
     29 10
     30 test 11:
     31 -10
     32 test 12:
     33 -5
     34 test 13:
     35 5
     36 test 14:
     37 5
     38 test 15:
     39 -5
     40 test 16:
     41 .5
     42 test 17:
     43 .50
     44 test 18:
     45 .50
     46 test 19:
     47 -.40
     48 test 20:
     49 .774
     50 test 21:
     51 -.766
     52 test 22:
     53 3.0
     54 test 23:
     55 0
     56 test 24:
     57 .001
     58 test 25:
     59 .002
     60 test 26:
     61 99999999999999999999
     62 test 27:
     63 -99999999999999999999
     64 test 28:
     65 12345678901234567890
     66 test 29:
     67 0
     68 test 30:
     69 8
     70 test 31:
     71 898
     72 test 32:
     73 99999999999999999998
     74 test 33:
     75 -99999999999999999998
     76 test 34:
     77 199999999999999999997
     78 test 35:
     79 199999999999999999997
     80 test 36:
     81 199999999999999999998
     82 test 37:
     83 -.999999
     84 test 38:
     85 0
     86 test 39:
     87 .000001
     88 test 40:
     89 .003
     90 test 41:
     91 .98
     92 test 42:
     93 -.41976
     94 EOF
     95 
     96 $EXEC ../dc <<EOF | diff -u $tmp -
     97 [test 1:]pc 2 3-p
     98 [test 2:]pc 0 0-p
     99 [test 3:]pc _2 _3-p
    100 [test 4:]pc 100 100-p
    101 [test 5:]pc _100 _100-p
    102 [test 6:]pc 10 _3-p
    103 [test 7:]pc 3 _10-p
    104 [test 8:]pc _3 10-p
    105 [test 9:]pc _10 3-p
    106 [test 10:]pc 5 _5-p
    107 [test 11:]pc _5 5-p
    108 [test 12:]pc 0 5-p
    109 [test 13:]pc 0 _5-p
    110 [test 14:]pc 5 0-p
    111 [test 15:]pc _5 0-p
    112 [test 16:]pc 1.0 .5-p
    113 [test 17:]pc 1.5 1.00-p
    114 [test 18:]pc 1.00 .50-p
    115 [test 19:]pc .1 .50-p
    116 [test 20:]pc 1.004 .23-p
    117 [test 21:]pc _.5 .266-p
    118 [test 22:]pc 1.5 _1.5-p
    119 [test 23:]pc _.001 _.001-p
    120 [test 24:]pc _.001 _.002-p
    121 [test 25:]pc .001 _.001-p
    122 [test 26:]pc 99999999999999999999 0-p
    123 [test 27:]pc _99999999999999999999 0-p
    124 [test 28:]pc 12345678901234567890 0-p
    125 [test 29:]pc 0 0-p
    126 [test 30:]pc 9 1-p
    127 [test 31:]pc 999 101-p
    128 [test 32:]pc 99999999999999999999 1-p
    129 [test 33:]pc _99999999999999999999 _1-p
    130 [test 34:]pc 99999999999999999999 _99999999999999999998-p
    131 [test 35:]pc 99999999999999999998 _99999999999999999999-p
    132 [test 36:]pc 99999999999999999999 _99999999999999999999-p
    133 [test 37:]pc .000001 1-p
    134 [test 38:]pc .0000000001 .0000000001-p
    135 [test 39:]pc _.000001 _.000002-p
    136 [test 40:]pc .001 _.002-p
    137 [test 41:]pc .99 .01-p
    138 [test 42:]pc .12345 .54321-p
    139 EOF