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

BracketCheckerTest.java 3.7KB

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