def test_roman_invalid(self): result, _, is_valid = convert('IC') assert result == 'Not a valid roman number' assert is_valid is False
def test_gibberish(self): result, _, is_valid = convert('k') assert result == 'Cannot evaluate expression' assert is_valid is False
def test_roman_max(self): result, _, is_valid = convert('MMMCMXCIX') assert result == '3999' assert is_valid
def test_roman_small_letters(self): result, _, is_valid = convert('iii') assert result == '3' assert is_valid
def test_roman_min(self): result, _, is_valid = convert('I') assert result == '1' assert is_valid
def test_num_greater(self): result, _, is_valid = convert('4000') assert result == 'Numbers greater than 3999 are not represented' assert is_valid is False
def test_num_max(self): result, _, is_valid = convert('3999') assert result == 'MMMCMXCIX' assert is_valid
def test_num_min(self): result, _, is_valid = convert('1') assert result == 'I' assert is_valid
def test_num_less(self): result, _, is_valid = convert('0') assert result == "Can't convert 0 and negative numbers" assert is_valid is False