Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.55 KB | None | 0 0
  1. import 'package:interview_algorithms_dart/bloc-code-valide.dart';
  2. import 'package:test/test.dart';
  3.  
  4. void main() {
  5. test("Chaîne vide invalide", () {
  6. expect(blocCodeValide(""), false);
  7. });
  8.  
  9. test("Caractère(s) invalide(s) de bloc de code", () {
  10. expect(blocCodeValide("a"), false);
  11. expect(blocCodeValide("aa"), false);
  12. expect(blocCodeValide("11"), false);
  13. expect(blocCodeValide("2211"), false);
  14. expect(blocCodeValide("abba"), false);
  15. expect(blocCodeValide("--"), false);
  16. expect(blocCodeValide("!!"), false);
  17. expect(blocCodeValide("<>"), false);
  18. });
  19.  
  20. test("Caractère unique", () {
  21. expect(blocCodeValide("("), false);
  22. expect(blocCodeValide(")"), false);
  23. expect(blocCodeValide("{"), false);
  24. expect(blocCodeValide("}"), false);
  25. expect(blocCodeValide("["), false);
  26. expect(blocCodeValide("]"), false);
  27. });
  28.  
  29. test("Fermeture invalide", () {
  30. expect(blocCodeValide("{)"), false);
  31. expect(blocCodeValide("{]"), false);
  32. expect(blocCodeValide("(}"), false);
  33. expect(blocCodeValide("(]"), false);
  34. expect(blocCodeValide("[}"), false);
  35. expect(blocCodeValide("[)"), false);
  36. });
  37.  
  38. test("Fermeture invalide au milieu de fermetures valides", () {
  39. expect(blocCodeValide("({])"), false);
  40. expect(blocCodeValide("{(]}"), false);
  41. expect(blocCodeValide("[(}]"), false);
  42. });
  43.  
  44. test("Fermeture invalide au en dehors de fermetures valides", () {
  45. expect(blocCodeValide("{()]"), false);
  46. expect(blocCodeValide("({}]"), false);
  47. expect(blocCodeValide("([]}"), false);
  48. });
  49.  
  50. test("Fermeture invalide enchaînée à des fermetures valides", () {
  51. // début
  52. expect(blocCodeValide("(}[]{}"), false);
  53. // milieu
  54. expect(blocCodeValide("(){)[]"), false);
  55. // fin
  56. expect(blocCodeValide("{}[][)"), false);
  57. });
  58.  
  59. test("Fermeture valide", () {
  60. expect(blocCodeValide("()"), true);
  61. expect(blocCodeValide("{}"), true);
  62. expect(blocCodeValide("[]"), true);
  63. });
  64.  
  65. test("Fermetures valides enchaînées", () {
  66. expect(blocCodeValide("(){}[]"), true);
  67. expect(blocCodeValide("()[]{}"), true);
  68. expect(blocCodeValide("{}[]()"), true);
  69. expect(blocCodeValide("{}()[]"), true);
  70. expect(blocCodeValide("[](){}"), true);
  71. expect(blocCodeValide("[]{}()"), true);
  72. });
  73.  
  74. test("Fermetures valides imbriquées", () {
  75. expect(blocCodeValide("({[]})"), true);
  76. expect(blocCodeValide("([{}])"), true);
  77. expect(blocCodeValide("{[()]}"), true);
  78. expect(blocCodeValide("{([])}"), true);
  79. expect(blocCodeValide("[{()}]"), true);
  80. expect(blocCodeValide("[({})]"), true);
  81. });
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement