sbase

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

0029-dc.sh (2364B)


      1 #!/bin/sh
      2 
      3 tmp=$$.tmp
      4 
      5 trap 'rm -f $tmp' EXIT
      6 trap 'exit $?' HUP INT TERM
      7 
      8 # Test * command: multiplication
      9 cat <<EOF >$tmp
     10 test 1:
     11 6
     12 test 2:
     13 0
     14 test 3:
     15 6
     16 test 4:
     17 10000
     18 test 5:
     19 10000
     20 test 6:
     21 -30
     22 test 7:
     23 -30
     24 test 8:
     25 -30
     26 test 9:
     27 -30
     28 test 10:
     29 -25
     30 test 11:
     31 -25
     32 test 12:
     33 0
     34 test 13:
     35 0
     36 test 14:
     37 0
     38 test 15:
     39 0
     40 test 16:
     41 5
     42 test 17:
     43 5
     44 test 18:
     45 -5
     46 test 19:
     47 -5
     48 test 20:
     49 .5
     50 test 21:
     51 1.50
     52 test 22:
     53 .50
     54 test 23:
     55 0
     56 test 24:
     57 3.7
     58 test 25:
     59 .2
     60 test 26:
     61 1.00
     62 test 27:
     63 1.000
     64 test 28:
     65 0
     66 test 29:
     67 -3.7
     68 test 30:
     69 -3.7
     70 test 31:
     71 3.7
     72 test 32:
     73 -.2
     74 test 33:
     75 -.2
     76 test 34:
     77 .2
     78 test 35:
     79 0
     80 test 36:
     81 0
     82 test 37:
     83 12345678901234567890
     84 test 38:
     85 -12345678901234567890
     86 test 39:
     87 81
     88 test 40:
     89 9801
     90 test 41:
     91 998001
     92 test 42:
     93 99980001
     94 test 43:
     95 9999999800000001
     96 test 44:
     97 0
     98 test 45:
     99 .10000
    100 test 46:
    101 1.0
    102 test 47:
    103 4.5
    104 test 48:
    105 4.5
    106 test 49:
    107 1.0
    108 test 50:
    109 1.00
    110 test 51:
    111 1.000
    112 test 52:
    113 4
    114 test 53:
    115 16
    116 test 54:
    117 64
    118 test 55:
    119 256
    120 test 56:
    121 65536
    122 test 57:
    123 1
    124 test 58:
    125 -1
    126 test 59:
    127 -1
    128 test 60:
    129 1
    130 test 61:
    131 0
    132 EOF
    133 
    134 $EXEC ../dc <<EOF | diff -u $tmp -
    135 [test 1:]pc 2 3*p
    136 [test 2:]pc 0 0*p
    137 [test 3:]pc _2 _3*p
    138 [test 4:]pc 100 100*p
    139 [test 5:]pc _100 _100*p
    140 [test 6:]pc 10 _3*p
    141 [test 7:]pc 3 _10*p
    142 [test 8:]pc _3 10*p
    143 [test 9:]pc _10 3*p
    144 [test 10:]pc 5 _5*p
    145 [test 11:]pc _5 5*p
    146 [test 12:]pc 0 5*p
    147 [test 13:]pc 0 _5*p
    148 [test 14:]pc 5 0*p
    149 [test 15:]pc _5 0*p
    150 [test 16:]pc 1 5*p
    151 [test 17:]pc 5 1*p
    152 [test 18:]pc _1 5*p
    153 [test 19:]pc 5 _1*p
    154 [test 20:]pc 1.0 .5*p
    155 [test 21:]pc 1.5 1.00*p
    156 [test 22:]pc 1.00 .50*p
    157 [test 23:]pc .1 .5*p
    158 [test 24:]pc 1.5 2.5*p
    159 [test 25:]pc .5 .5*p
    160 [test 26:]pc .25 4*p
    161 [test 27:]pc .125 8*p
    162 [test 28:]pc .001 .001*p
    163 [test 29:]pc _1.5 2.5*p
    164 [test 30:]pc 1.5 _2.5*p
    165 [test 31:]pc _1.5 _2.5*p
    166 [test 32:]pc _.5 .5*p
    167 [test 33:]pc .5 _.5*p
    168 [test 34:]pc _.5 _.5*p
    169 [test 35:]pc 99999999999999999999 0*p
    170 [test 36:]pc _99999999999999999999 0*p
    171 [test 37:]pc 12345678901234567890 1*p
    172 [test 38:]pc 12345678901234567890 _1*p
    173 [test 39:]pc 9 9*p
    174 [test 40:]pc 99 99*p
    175 [test 41:]pc 999 999*p
    176 [test 42:]pc 9999 9999*p
    177 [test 43:]pc 99999999 99999999*p
    178 [test 44:]pc .0001 .0001*p
    179 [test 45:]pc .00001 10000*p
    180 [test 46:]pc .1 10*p
    181 [test 47:]pc 1.5 3*p
    182 [test 48:]pc 3 1.5*p
    183 [test 49:]pc 10 .1*p
    184 [test 50:]pc 100 .01*p
    185 [test 51:]pc 1000 .001*p
    186 [test 52:]pc 2 2*p
    187 [test 53:]pc 4 4*p
    188 [test 54:]pc 8 8*p
    189 [test 55:]pc 16 16*p
    190 [test 56:]pc 256 256*p
    191 [test 57:]pc 1 1*p
    192 [test 58:]pc _1 1*p
    193 [test 59:]pc 1 _1*p
    194 [test 60:]pc _1 _1*p
    195 [test 61:]pc 0 0*p
    196 EOF