<commit_before>import unittest

from katas.roman_numeral import RomanNumeral


class RomanToArabicConverterTest(unittest.TestCase):
    def test_I_to_arabic_equals_1(self):
        self.assert_roman_to_arabic("I", 1)

    def test_II_to_arabic_equals_2(self):
        self.assert_roman_to_arabic("II", 2)

    def test_III_to_arabic_equals_3(self):
        self.assert_roman_to_arabic("III", 3)

    def test_IV_to_arabic_equals_4(self):
        self.assert_roman_to_arabic("IV", 4)

    def test_V_to_arabic_equals_5(self):
        self.assert_roman_to_arabic("V", 5)

    def test_IX_to_arabic_equals_9(self):
        self.assert_roman_to_arabic("IX", 9)

    def test_X_to_arabic_equals_10(self):
        self.assert_roman_to_arabic("X", 10)

    def test_XL_to_arabic_equals_40(self):
        self.assert_roman_to_arabic("XL", 40)

    def test_XC_to_arabic_equals_90(self):
        self.assert_roman_to_arabic("XC", 90)

    def test_C_to_arabic_equals_100(self):
        self.assert_roman_to_arabic("C", 100)

    def test_CD_to_arabic_equals_400(self):
        self.assert_roman_to_arabic("CD", 400)

    def test_D_to_arabic_equals_500(self):
        self.assert_roman_to_arabic("D", 500)

    def test_M_to_arabic_equals_1000(self):
        self.assert_roman_to_arabic("M", 1000)

    def assert_roman_to_arabic(self, roman, arabic):
        result = RomanNumeral.from_roman(roman)
        self.assertEquals(arabic, result.arabic)<commit_msg>Added test for CM -> 900<commit_after>import unittest

from katas.roman_numeral import RomanNumeral


class RomanToArabicConverterTest(unittest.TestCase):
    def test_I_to_arabic_equals_1(self):
        self.assert_roman_to_arabic("I", 1)

    def test_II_to_arabic_equals_2(self):
        self.assert_roman_to_arabic("II", 2)

    def test_III_to_arabic_equals_3(self):
        self.assert_roman_to_arabic("III", 3)

    def test_IV_to_arabic_equals_4(self):
        self.assert_roman_to_arabic("IV", 4)

    def test_V_to_arabic_equals_5(self):
        self.assert_roman_to_arabic("V", 5)

    def test_IX_to_arabic_equals_9(self):
        self.assert_roman_to_arabic("IX", 9)

    def test_X_to_arabic_equals_10(self):
        self.assert_roman_to_arabic("X", 10)

    def test_XL_to_arabic_equals_40(self):
        self.assert_roman_to_arabic("XL", 40)

    def test_XC_to_arabic_equals_90(self):
        self.assert_roman_to_arabic("XC", 90)

    def test_C_to_arabic_equals_100(self):
        self.assert_roman_to_arabic("C", 100)

    def test_CD_to_arabic_equals_400(self):
        self.assert_roman_to_arabic("CD", 400)

    def test_D_to_arabic_equals_500(self):
        self.assert_roman_to_arabic("D", 500)

    def test_CM_to_arabic_equals_900(self):
        self.assert_roman_to_arabic("CM", 900)

    def test_M_to_arabic_equals_1000(self):
        self.assert_roman_to_arabic("M", 1000)

    def assert_roman_to_arabic(self, roman, arabic):
        result = RomanNumeral.from_roman(roman)
        self.assertEquals(arabic, result.arabic)
{'fraction_non_alphanumeric': 0.0961730449251248, 'fraction_numerical': 0.03627287853577371, 'mean_word_length': 4.173838209982788, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2124821', 'n_tokens_mistral': 1347, 'n_tokens_neox': 1226, 'n_words': 143}