def testNext2BallsMissMiss(self): b = Bowling() self.assertEqual(0, b.next2Balls(['12','--','56'], 0))
def testNext2BallsDigitSpare(self): b = Bowling() self.assertEqual(10, b.next2Balls(['12','3/','56'], 0))
def testNext2BallsDigitMiss(self): b = Bowling() self.assertEqual(3, b.next2Balls(['12','3-','1'], 0))
def testNext2BallsStrikeMiss(self): b = Bowling() self.assertEqual(10, b.next2Balls(['12','X','-6'], 0))
def testMissAllSecond(self): b = Bowling() self.assertEqual(90, b.calc('9-|9-|9-|9-|9-|9-|9-|9-|9-|9-||'))
def testNext2BallsStrikeDigit(self): b = Bowling() self.assertEqual(11, b.next2Balls(['12','X','1'], 0))
def testNext2BallsDigit(self): b = Bowling() self.assertEqual(7, b.next2Balls(['12','34','56'], 0))
def testNext2BallsStrikeStrike(self): b = Bowling() self.assertEqual(20, b.next2Balls(['12','X','X'], 0))
def testNext1BallsStrike(self): b = Bowling() self.assertEqual(10, b.next1Balls(['12','X','56'], 0))
def testFirstAndSpare(self): b = Bowling() self.assertEqual(150, b.calc('5/|5/|5/|5/|5/|5/|5/|5/|5/|5/||5'))
def testAllStrikes(self): b = Bowling() self.assertEqual(300, b.calc('X|X|X|X|X|X|X|X|X|X||XX'))
def testMissAndSecond(self): b = Bowling() self.assertEqual(40, b.calc('-4|-4|-4|-4|-4|-4|-4|-4|-4|-4||'))
def testFirstAndSecond(self): b = Bowling() self.assertEqual(90, b.calc('81|81|81|81|81|81|81|81|81|81||'))