import org.junit.Ignore;
import org.junit.Test;

import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;

public class BracketCheckerTest {

    @Test
    public void testPairedSquareBrackets() {
        final BracketChecker bracketChecker = new BracketChecker("[]");
        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testEmptyString() {
        final BracketChecker bracketChecker = new BracketChecker("");
        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testUnpairedBrackets() {
        final BracketChecker bracketChecker = new BracketChecker("[[");
        assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testIncorrectlyOrderedBrackets() {
        final BracketChecker bracketChecker = new BracketChecker("}{");
        assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testSingleOpenBracketWithIncorrectClosingBracket() {
        final BracketChecker bracketChecker = new BracketChecker("{]");
        assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testPairedBracketsWithWhitespace() {
        final BracketChecker bracketChecker = new BracketChecker("{ }");
        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testSimpleNestedBrackets() {
        final BracketChecker bracketChecker = new BracketChecker("{[]}");
        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testSeveralPairedBrackets() {
        final BracketChecker bracketChecker = new BracketChecker("{}[]");
        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testPairedAndNestedBrackets() {
        final BracketChecker bracketChecker = new BracketChecker("([{}({}[])])");
        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testUnopenedClosingBracket() {
        final BracketChecker bracketChecker = new BracketChecker("{[)][]}");
        assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testUnpairedAndNestedBracket() {
        final BracketChecker bracketChecker = new BracketChecker("([{])");
        assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testPairedAndIncorrectlyNestedBrackets() {
        final BracketChecker bracketChecker = new BracketChecker("[({]})");
        assertFalse(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testValidMathExpression() {
        final BracketChecker bracketChecker = new BracketChecker("(((185 + 223.85) * 15) - 543)/2");
        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

    @Ignore("Remove to run test")
    @Test
    public void testValidComplexLaTeXExpression() {
        final BracketChecker bracketChecker = new BracketChecker(
                "\\left(\\begin{array}{cc} \\frac{1}{3} & x\\\\ \\mathrm{e}^{x} &... x^2 \\end{array}\\right)");

        assertTrue(bracketChecker.areBracketsMatchedAndNestedCorrectly());
    }

}

@@ -220,38 +220,32 @@
 ets() %7B%0A        
-final 
 BracketChecker b
@@ -282,24 +282,24 @@
 cker(%22%5B%5D%22);%0A
+
         asse
@@ -448,38 +448,32 @@
 ing() %7B%0A        
-final 
 BracketChecker b
@@ -679,38 +679,32 @@
 ets() %7B%0A        
-final 
 BracketChecker b
@@ -923,38 +923,32 @@
 ets() %7B%0A        
-final 
 BracketChecker b
@@ -1185,38 +1185,32 @@
 ket() %7B%0A        
-final 
 BracketChecker b
@@ -1431,38 +1431,32 @@
 ace() %7B%0A        
-final 
 BracketChecker b
@@ -1669,38 +1669,32 @@
 ets() %7B%0A        
-final 
 BracketChecker b
@@ -1909,38 +1909,32 @@
 ets() %7B%0A        
-final 
 BracketChecker b
@@ -2151,38 +2151,32 @@
 ets() %7B%0A        
-final 
 BracketChecker b
@@ -2400,38 +2400,32 @@
 ket() %7B%0A        
-final 
 BracketChecker b
@@ -2647,38 +2647,32 @@
 ket() %7B%0A        
-final 
 BracketChecker b
@@ -2902,38 +2902,32 @@
 ets() %7B%0A        
-final 
 BracketChecker b
@@ -3143,38 +3143,32 @@
 ion() %7B%0A        
-final 
 BracketChecker b
@@ -3416,24 +3416,24 @@
 ion() %7B%0A
+
         
 final Br
@@ -3428,14 +3428,8 @@
     
-final 
 Brac

remove `final` from tests #1420 (#1444)