ChipMaster's bwBASIC This also includes history going back to v2.10. *WARN* some binary files might have been corrupted by CRLF.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

161 lines
5.5 KiB

  1. REM ------------------------------------------------------------
  2. REM PURPOSE: TEST THE PARAMETER RANGE CHECKS
  3. REM AUTHOR: HOWARD WULF, AF5NE
  4. REM GENERATED: 02/21/2015 14:08:31
  5. REM FILENAME: F_RIGHT_A_X_S.BAS
  6. REM SYNTAX: S$ = RIGHT$( A$, X )
  7. REM UNIQUEID: F_RIGHT_A_X_S
  8. REM FUNCTION: RIGHT$
  9. REM
  10. REM VARIABLE DESCRIPTION
  11. REM I CURRENT TESTCASE NUMBER
  12. REM E EXPECTED ERROR FLAG
  13. REM F ACTUAL ERROR FLAG
  14. REM R$ EXPECTED FUNCTION RESULT
  15. REM S$ ACTUAL FUNCTION RESULT
  16. REM A$ ACTUAL FUNCTION PARAMETER
  17. REM X ACTUAL FUNCTION PARAMETER
  18. REM
  19. RESTORE 2000
  20. REM GET TESTCASE #
  21. READ I
  22. WHILE I > 0
  23. REM GET TESTCASE DATA
  24. READ E, R$, A$, X
  25. REM DISPLAY TESTCASE DATA
  26. PRINT "TESTCASE #";I,"E=";E,"R$=[";R$;"]", "A$=[";A$;"]", "X=";X
  27. REM EXECUTE TESTCASE
  28. N = 0
  29. S$ = ""
  30. ON ERROR GOTO 9000
  31. F = 0
  32. 999 S$ = RIGHT$( A$, X )
  33. ERROR 0
  34. REM DISPLAY TESTCASE RESULTS
  35. PRINT ,"F=";F,"S$=[";S$;"]"
  36. REM VERIFY EXPECTED ERROR
  37. IF E <> F THEN
  38. PRINT "*** TEST FAILED, EXCEPTION MISMATCH ***"
  39. STOP
  40. END IF
  41. REM VERIFY EXPECTED RESULT
  42. IF R$ <> S$ THEN
  43. PRINT "*** TEST FAILED, RESULT MISMATCH ***"
  44. STOP
  45. END IF
  46. PRINT "*** TEST PASSED ***"
  47. REM GET NEXT TESTCASE #
  48. READ I
  49. WEND
  50. PRINT "*** ALL TESTS PASSED ***"
  51. GOTO 9999
  52. 1999 REM TESTCASE, EXPECTED ERROR, EXPECTED RESULT, PARAMETERS...
  53. DATA 1 , 0 , "", "", 0
  54. DATA 2 , 0 , " ", " ", 1
  55. DATA 3 , 1 , "", "3", -1
  56. DATA 4 , 0 , "", "z", .4
  57. DATA 5 , 0 , "", " ", -.4
  58. DATA 6 , 0 , "3", " 3", .6
  59. DATA 7 , 1 , "", " z", -.6
  60. DATA 8 , 0 , "3 ", "3 ", 254
  61. DATA 9 , 0 , "z ", "z ", 255
  62. DATA 10 , 0 , " 3 ", " 3 ", 256
  63. DATA 11 , 1 , "", " z ", 32000
  64. DATA 12 , 0 , "", " LLLL", -.227229
  65. DATA 13 , 0 , "", " '' ", -.239157
  66. DATA 14 , 0 , "", " oo ", -.213586
  67. DATA 15 , 0 , "", " 00 ", .274675
  68. DATA 16 , 0 , "", " \\\\ ", .169766
  69. DATA 17 , 0 , "", " lllll ", .318766
  70. DATA 18 , 0 , "", " uuuu ", 2.06658E-2
  71. DATA 19 , 0 , "", " a ", .188257
  72. DATA 20 , 0 , "", " ", -.277537
  73. DATA 21 , 0 , "", " hh ", -.481303
  74. DATA 22 , 0 , "", " h ", .43556
  75. DATA 23 , 0 , "", " )", -.210971
  76. DATA 24 , 0 , "", " 5 ", -.455216
  77. DATA 25 , 1 , "", " 2 ", -110.907
  78. DATA 26 , 0 , " - ", " - ", 105.632
  79. DATA 27 , 1 , "", "dd ", -114.341
  80. DATA 28 , 0 , " tttt ", " tttt ", 109.706
  81. DATA 29 , 0 , " :::: ", " :::: ", 109.198
  82. DATA 30 , 0 , " ___ ", " ___ ", 85.8773
  83. DATA 31 , 1 , "", " ", -58.3548
  84. DATA 32 , 0 , " ", " ", 29.6397
  85. DATA 33 , 1 , "", " _____ ", -108.36
  86. DATA 34 , 1 , "", " S ", -46.5199
  87. DATA 35 , 0 , " FFFF ", " FFFF ", 112.521
  88. DATA 36 , 0 , " kkk", " kkk", 45.4151
  89. DATA 37 , 0 , " NNNN ", " NNNN ", 101.129
  90. DATA 38 , 0 , " mmmm ", " mmmm ", 65.0473
  91. DATA 39 , 0 , " ,,,,, ", " ,,,,, ", 48.4012
  92. DATA 40 , 0 , "OO ", "OO ", 122.294
  93. DATA 41 , 1 , "", " HHHH ", -56.1094
  94. DATA 42 , 1 , "", " < ", -121.087
  95. DATA 43 , 1 , "", " j ", -123.517
  96. DATA 44 , 1 , "", " yyyy ", -97.6301
  97. DATA 45 , 1 , "", " +++ ", -64.0001
  98. DATA 46 , 1 , "", "o ", -25.6888
  99. DATA 47 , 0 , " ((", " ((", 14.8006
  100. DATA 48 , 1 , "", " uu ", -61.0877
  101. DATA 49 , 1 , "", " 00 ", -66.6381
  102. DATA 50 , 1 , "", " HH ", -5476.5
  103. DATA 51 , 1 , "", " ", -21210.3
  104. DATA 52 , 1 , "", " G ", -28757.2
  105. DATA 53 , 1 , "", " {{{{ ", -28732.2
  106. DATA 54 , 1 , "", " ]]] ", 12730.3
  107. DATA 55 , 1 , "", "CCC", -1830.69
  108. DATA 56 , 1 , "", " 44 ", 5486.39
  109. DATA 57 , 1 , "", "^^ ", 22405.9
  110. DATA 58 , 1 , "", " QQ ", 30809.8
  111. DATA 59 , 1 , "", " FFFF ", -28930.6
  112. DATA 60 , 1 , "", " n ", -6014.53
  113. DATA 61 , 1 , "", " hh ", 17414.6
  114. DATA 62 , 1 , "", "555 ", -10538.3
  115. DATA 63 , 1 , "", " YYYY ", -17536.3
  116. DATA 64 , 1 , "", " w ", -8856.62
  117. DATA 65 , 1 , "", "MMMM ", -5140.12
  118. DATA 66 , 1 , "", " JJJJ ", -8595.31
  119. DATA 67 , 1 , "", " %% ", -3382.87
  120. DATA 68 , 1 , "", " * ", -5002.07
  121. DATA 69 , 1 , "", " @@@ ", -5800.72
  122. DATA 70 , 1 , "", "I ", 29686.4
  123. DATA 71 , 0 , " ss ", " ss ", 2571.
  124. DATA 72 , 1 , "", " f ", 31091.
  125. DATA 73 , 1 , "", " D ", 14819.
  126. DATA 74 , 0 , "### ", "### ", 3790.9
  127. DATA 75 , 1 , "", " ' ", -4.2981E+9
  128. DATA 76 , 1 , "", " dd ", -7.05453E+8
  129. DATA 77 , 1 , "", " TT ", -3.10179E+9
  130. DATA 78 , 1 , "", " vvv ", -4.86159E+9
  131. DATA 79 , 1 , "", " X ", -8.62908E+8
  132. DATA 80 , 1 , "", " % ", -3.4101E+9
  133. DATA 81 , 1 , "", " ", 3.3889E+9
  134. DATA 82 , 1 , "", " 5555 ", 2.49826E+9
  135. DATA 83 , 1 , "", "FFFF ", 2.3491E+9
  136. DATA 84 , 1 , "", " %% ", 1.94745E+8
  137. DATA 85 , 1 , "", " ", 2.02475E+9
  138. DATA 86 , 1 , "", " ~~~~ ", -2.26748E+9
  139. DATA 87 , 1 , "", " || ", -2.10587E+9
  140. DATA 88 , 1 , "", " SSS ", 4.23585E+9
  141. DATA 89 , 1 , "", " 6666 ", -2.66524E+9
  142. DATA 90 , 1 , "", " ww ", 4.01052E+9
  143. DATA 91 , 1 , "", " 1111 ", -4.87912E+9
  144. DATA 92 , 1 , "", " K ", 1.77556E+9
  145. DATA 93 , 1 , "", " ttttt ", 2.87705E+8
  146. DATA 94 , 1 , "", " OOOOO ", 1.99977E+8
  147. DATA 95 , 1 , "", " E ", -3.39941E+9
  148. DATA 96 , 1 , "", " PPPPP ", -3.49119E+9
  149. DATA 97 , 1 , "", " == ", -2.86324E+9
  150. DATA 98 , 1 , "", " VVVV ", 4.20418E+9
  151. DATA 99 , 1 , "", " c ", -3.1518E+9
  152. DATA 100 , 1 , "", " yyyy ", 4.60615E+9
  153. DATA 0
  154. 9000 REM ERROR HANDLER
  155. IF ERL = 999 THEN
  156. F = ABS(SGN(ERR))
  157. RESUME NEXT
  158. END IF
  159. PRINT "*** UNEXPECTED ERROR ON LINE ";ERL;" ***"
  160. 9999 END