def test_findBrackets(self): self.assertEqual( (13, 32), firstFirstPairOfBrackets( "(7 * 5 * 6 + (9 * 8 + 3 * 3 + 5) + 7) * (6 + 3 * 9) + 6 + 7 + (7 * 5) * 4" )) self.assertEqual( "(7 * 5 * 6 + 230 + 7) * (6 + 3 * 9) + 6 + 7 + (7 * 5) * 4", replaceFirstStringWithinBrackets( "(7 * 5 * 6 + (9 * 8 + 3 * 3 + 5) + 7) * (6 + 3 * 9) + 6 + 7 + (7 * 5) * 4" )) self.assertEqual(71, reduceStringToSingleValue("1 + 2 * 3 + 4 * 5 + 6"))
def test_Preprocess6(self): self.assertTrue(True) self.assertEqual( 51, reduceStringToSingleValue( insertBracketsForAllAdditions("1 + (2 * 3) + (4 * (5 + 6))"))) self.assertEqual( 46, reduceStringToSingleValue( insertBracketsForAllAdditions("2 * 3 + (4 * 5)"))) self.assertEqual( 1445, reduceStringToSingleValue( insertBracketsForAllAdditions("5 + (8 * 3 + 9 + 3 * 4 * 3)"))) self.assertEqual( 669060, reduceStringToSingleValue( insertBracketsForAllAdditions( "5 * 9 * (7 * 3 * 3 + 9 * 3 + (8 + 6 * 4))"))) self.assertEqual( 23340, reduceStringToSingleValue( insertBracketsForAllAdditions( "((2 + 4 * 9) * (6 + 9 * 8 + 6) + 6) + 2 + 4 * 2")))
def test_solveTestData5(self): self.assertEqual( reduceStringToSingleValue( "((2 + 4 * 9) * (6 + 9 * 8 + 6) + 6) + 2 + 4 * 2"), 13632)
def test_solveTestData4(self): self.assertEqual( reduceStringToSingleValue( "5 * 9 * (7 * 3 * 3 + 9 * 3 + (8 + 6 * 4))"), 12240)
def test_solveTestData3(self): self.assertEqual( reduceStringToSingleValue("5 + (8 * 3 + 9 + 3 * 4 * 3)"), 437)
def test_solveTestData2(self): self.assertEqual(reduceStringToSingleValue("2 * 3 + (4 * 5)"), 26)
def test_solveTestData1(self): self.assertEqual( 51, reduceStringToSingleValue("1 + (2 * 3) + (4 * (5 + 6))"))