lots of exercises in java... from https://github.com/exercism/java

BracketCheckerTest.java 3.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. import org.junit.Ignore;
  2. import org.junit.Test;
  3. import static org.junit.Assert.assertFalse;
  4. import static org.junit.Assert.assertTrue;
  5. public class BracketCheckerTest {
  6. @Test
  7. public void testPairedSquareBrackets() {
  8. BracketChecker bracketChecker = new BracketChecker("[]");
  9. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  10. }
  11. @Ignore("Remove to run test")
  12. @Test
  13. public void testEmptyString() {
  14. BracketChecker bracketChecker = new BracketChecker("");
  15. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  16. }
  17. @Ignore("Remove to run test")
  18. @Test
  19. public void testUnpairedBrackets() {
  20. BracketChecker bracketChecker = new BracketChecker("[[");
  21. assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  22. }
  23. @Ignore("Remove to run test")
  24. @Test
  25. public void testIncorrectlyOrderedBrackets() {
  26. BracketChecker bracketChecker = new BracketChecker("}{");
  27. assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  28. }
  29. @Ignore("Remove to run test")
  30. @Test
  31. public void testSingleOpenBracketWithIncorrectClosingBracket() {
  32. BracketChecker bracketChecker = new BracketChecker("{]");
  33. assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  34. }
  35. @Ignore("Remove to run test")
  36. @Test
  37. public void testPairedBracketsWithWhitespace() {
  38. BracketChecker bracketChecker = new BracketChecker("{ }");
  39. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  40. }
  41. @Ignore("Remove to run test")
  42. @Test
  43. public void testPartiallyPairedBrackets() {
  44. BracketChecker bracketChecker = new BracketChecker("{[])");
  45. assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  46. }
  47. @Ignore("Remove to run test")
  48. @Test
  49. public void testSimpleNestedBrackets() {
  50. BracketChecker bracketChecker = new BracketChecker("{[]}");
  51. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  52. }
  53. @Ignore("Remove to run test")
  54. @Test
  55. public void testSeveralPairedBrackets() {
  56. BracketChecker bracketChecker = new BracketChecker("{}[]");
  57. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  58. }
  59. @Ignore("Remove to run test")
  60. @Test
  61. public void testPairedAndNestedBrackets() {
  62. BracketChecker bracketChecker = new BracketChecker("([{}({}[])])");
  63. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  64. }
  65. @Ignore("Remove to run test")
  66. @Test
  67. public void testUnopenedClosingBracket() {
  68. BracketChecker bracketChecker = new BracketChecker("{[)][]}");
  69. assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  70. }
  71. @Ignore("Remove to run test")
  72. @Test
  73. public void testUnpairedAndNestedBracket() {
  74. BracketChecker bracketChecker = new BracketChecker("([{])");
  75. assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  76. }
  77. @Ignore("Remove to run test")
  78. @Test
  79. public void testPairedAndIncorrectlyNestedBrackets() {
  80. BracketChecker bracketChecker = new BracketChecker("[({]})");
  81. assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  82. }
  83. @Ignore("Remove to run test")
  84. @Test
  85. public void testValidMathExpression() {
  86. BracketChecker bracketChecker = new BracketChecker("(((185 + 223.85) * 15) - 543)/2");
  87. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  88. }
  89. @Ignore("Remove to run test")
  90. @Test
  91. public void testValidComplexLaTeXExpression() {
  92. BracketChecker bracketChecker = new BracketChecker(
  93. "\\left(\\begin{array}{cc} \\frac{1}{3} & x\\\\ \\mathrm{e}^{x} &... x^2 \\end{array}\\right)");
  94. assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
  95. }
  96. }