Advertisement
Guest User

Untitled

a guest
Nov 14th, 2019
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.26 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. suite = [
  4. Test (
  5. name = "Hilfeausgabe",
  6. description = "Der Hilfetext muss auf stdout ausgegeben werden.",
  7. command = "$DUT -h",
  8. stdout = ExpectFile("expected/usage.txt"),
  9. stderr = "",
  10. returnCode = 0,
  11. timeout = 10
  12. ),
  13. Test (
  14. name = "Beispiel aus der Aufgabenstellung",
  15. description = "Ausgabe leerer Text",
  16. command = "$DUT -w",
  17. stdout = ExpectFile("expected/empty_text.txt"),
  18. stderr = "",
  19. returnCode = 0,
  20. timeout = 10
  21. ),
  22. Test (
  23. name = "Beispiel aus der Aufgabenstellung",
  24. description = "Ausgabe des Histograms des leeren Texts",
  25. command = "$DUT -i",
  26. stdout = ExpectFile("expected/empty_hist.txt"),
  27. stderr = "",
  28. returnCode = 0,
  29. timeout = 10
  30. ),
  31. Test (
  32. name = "Beispiel aus der Aufgabenstellung",
  33. description = "Caesar ver- und entschluesseln",
  34. command = "$DUT -t \"Hallo Welt\" -C 12 -w -e -w -d -w",
  35. stdout = ExpectFile("expected/b_caesar.txt"),
  36. stderr = "",
  37. returnCode = 0,
  38. timeout = 10
  39. ),
  40. Test (
  41. name = "Beispiel aus der Aufgabenstellung",
  42. description = "Vigenere ver- und entschluesseln",
  43. command = "$DUT -t \"Hallo Welt\" -w -V \" XY \" -e -w -d -w",
  44. stdout = ExpectFile("expected/b_vigenere.txt"),
  45. stderr = "",
  46. returnCode = 0,
  47. timeout = 10
  48. ),
  49. Test (
  50. name = "Beispiel aus der Aufgabenstellung",
  51. description = "Histogrammausgabe",
  52. command = "$DUT -t \"HAAAAAAAAAAAAAAALLO_WELT!\" -i",
  53. stdout = ExpectFile("expected/b_histogram.txt"),
  54. stderr = "",
  55. returnCode = 0,
  56. timeout = 10
  57. ),
  58. Test (
  59. name = "Beispiel aus der Aufgabenstellung",
  60. description = "Komplexer Aufruf",
  61. command = "$DUT -C 5 -t \"HALLO\" -w -i -e -w -i -t \"Welt\" -w -e -w",
  62. stdout = ExpectFile("expected/b_complex_call.txt"),
  63. stderr = "",
  64. returnCode = 0,
  65. timeout = 10
  66. ),
  67. Test (
  68. name = "Fehlerfall: keine Parameter",
  69. description = "Fehlermeldung und Errorcode muessen zu den \
  70. Vorgaben passen.",
  71. command = "$DUT",
  72. stdout = "",
  73. stderr = "regex:^Error: No arguments given.",
  74. returnCode = 1,
  75. timeout = 10
  76. ),
  77. Test (
  78. name = "Eingabe mit -t mehr als 30 Zeichen",
  79. description = "Ungueltiger Input 31 Zeichen",
  80. command = "$DUT -t \"qwertzuiopqwertzuiopqwertzuiopq\"",
  81. stdout = "",
  82. stderr = "regex:^Error: Given Text too long.",
  83. returnCode = 5,
  84. timeout = 10
  85. ),
  86. Test (
  87. name = "Eingabe mit -t Text vergessen",
  88. description = "-w als Text",
  89. command = "$DUT -t -w -w",
  90. stdout = "-w",
  91. stderr = "",
  92. returnCode = 0,
  93. timeout = 10
  94. ),
  95. Test (
  96. name = "Eingabe mit -t danach kommt nichts mehr",
  97. description = "Nix da",
  98. command = "$DUT -t",
  99. stdout = "",
  100. stderr = "regex:^Error: Missing text.",
  101. returnCode = 3,
  102. timeout = 10
  103. ),
  104. Test (
  105. name = "Eingabe mit -t ungueltiges Zeichen",
  106. description = "Boeses Tab?",
  107. command = "$DUT -t \"Hallo\t\"",
  108. stdout = "",
  109. stderr = "regex:^Error: Illegal character in given text.",
  110. returnCode = 4,
  111. timeout = 10
  112. ),
  113. Test (
  114. name = "Eingabe mit -t Ausgabe mit -w",
  115. description = "Gueltiger Input",
  116. command = "$DUT -t \"Hello\" -w",
  117. stdout = "Hello",
  118. stderr = "",
  119. returnCode = 0,
  120. timeout = 10
  121. ),
  122. Test (
  123. name = "-C Rot vergessen",
  124. description = "Rot vergessen",
  125. command = "$DUT -t \"Hello\" -C -w",
  126. stdout = "",
  127. stderr = "regex:^Error: Missing or invalid rotation for caesar cipher.",
  128. returnCode = 9,
  129. timeout = 10
  130. ),
  131. Test (
  132. name = "-C Rot negativ",
  133. description = "Rot negativ",
  134. command = "$DUT -t \"Hello\" -C -10 -w",
  135. stdout = "",
  136. stderr = "regex:^Error: Missing or invalid rotation for caesar cipher.",
  137. returnCode = 9,
  138. timeout = 10
  139. ),
  140. Test (
  141. name = "Caesar-Verschluesselung ueber den Rand",
  142. description = "Rot ist 2",
  143. command = "$DUT -t \"}~\" -C 2 -e -w",
  144. stdout = " !",
  145. stderr = "",
  146. returnCode = 0,
  147. timeout = 10
  148. ),
  149. Test (
  150. name = "Caesar-Verschluesselung ueber den Rand und zu grosse Rotation",
  151. description = "Rot ist 200",
  152. command = "$DUT -t \"}~\" -C 200 -e -w",
  153. stdout = "()",
  154. stderr = "",
  155. returnCode = 0,
  156. timeout = 10
  157. ),
  158. Test (
  159. name = "Caesar-Verschluesselung normal",
  160. description = "Rot ist 12",
  161. command = "$DUT -t \"Hallo Welt\" -C 12 -e -w",
  162. stdout = "Tmxx{,cqx!",
  163. stderr = "",
  164. returnCode = 0,
  165. timeout = 10
  166. ),
  167. Test (
  168. name = "Caesar-Verschluesselung zwei Mal",
  169. description = "Rot ist 1",
  170. command = "$DUT -t \"Hallo Welt\" -C 1 -e -e -w",
  171. stdout = "Jcnnq\"Ygnv",
  172. stderr = "",
  173. returnCode = 0,
  174. timeout = 10
  175. ),
  176. Test (
  177. name = "Vigenere-Verschluesselung normal",
  178. description = "Key ist Key",
  179. command = "$DUT -t \"Helga\" -V \"Key\" -e -w",
  180. stdout = "sKf3G",
  181. stderr = "",
  182. returnCode = 0,
  183. timeout = 10
  184. ),
  185. Test (
  186. name = "Vigenere-Ver- und Entschluesselung normal",
  187. description = "Key ist Key",
  188. command = "$DUT -t \"Helga\" -V \"Key\" -e -d -w",
  189. stdout = "Helga",
  190. stderr = "",
  191. returnCode = 0,
  192. timeout = 10
  193. ),
  194. Test (
  195. name = "Vigenere-Verschluesselung ohne Key",
  196. description = "Key ist nicht vorhanden",
  197. command = "$DUT -t \"Helga\" -V ",
  198. stdout = "",
  199. stderr = "regex:^Error: Missing, empty or invalid key for vigenere cipher.",
  200. returnCode = 10,
  201. timeout = 10
  202. ),
  203. Test (
  204. name = "Vigenere-Verschluesselung ungueltiger Key",
  205. description = "Key enthaelt ungueltige Zeichen",
  206. command = "$DUT -t \"Helga\" -V \"\t\t\" ",
  207. stdout = "",
  208. stderr = "regex:^Error: Missing, empty or invalid key for vigenere cipher.",
  209. returnCode = 13,
  210. timeout = 10
  211. ),
  212. Test (
  213. name = "Verschluesselung ohne Verschluesselungsalgorithmus",
  214. description = "-e ohne ausgewaehlten Verschluesselungsalgorithmus",
  215. command = "$DUT -t \"Hallo Welt\" -e -w",
  216. stdout = "",
  217. stderr = "regex:^Error: No cipher algorithm selected.",
  218. returnCode = 6,
  219. timeout = 10
  220. ),
  221. Test (
  222. name = "Entschluesselung ohne Verschluesselungsalgorithmus",
  223. description = "-d ohne ausgewaehlten Verschluesselungsalgorithmus",
  224. command = "$DUT -t \"Hallo Welt\" -d -w",
  225. stdout = "",
  226. stderr = "regex:^Error: No cipher algorithm selected.",
  227. returnCode = 7,
  228. timeout = 10
  229. ),
  230. ]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement