def test_II(): sol = Solution() assert sol.romanToInt('II') == 2
def test_V(): sol = Solution() assert sol.romanToInt('V') == 5
def test_X(): sol = Solution() assert sol.romanToInt('X') == 10
def test_IXIVIVIXI(): sol = Solution() assert sol.romanToInt('IXIVIVIXI') == 27
def test_IXIXIX(): sol = Solution() assert sol.romanToInt('IXIXIX') == 27
def test_IVIIVIVI(): sol = Solution() assert sol.romanToInt('IVIIVIVI') == 14
def test_IV(): sol = Solution() assert sol.romanToInt('IV') == 4
i -= 2 elif pro > 4 and pro < 9: result += items[i + 1][0] left -= items[i + 1][1] elif pro == 9: result += items[i][0] + items[i + 2][0] left -= items[i + 2][1] - items[i][1] i -= 2 else: i -= 2 if left == 0: break return result if __name__ == "__main__": s = Solution() i = 1 print 6, s.intToRoman(6) print 91, s.intToRoman(91) rt = RomanToInteger() while i < 4000: if rt.romanToInt(s.intToRoman(i)) != i: print "Error:", i, s.intToRoman(i) break else: print i, s.intToRoman(i), "is ok" i += 1 print "ok"