def test_sorts_multiple_levels(self): files = [ "I.1.a", "I.1.b", "I.1.c", "II.3.b", "I.2.a", "I.2.b", "II.3.a", "I.2.c", "I.3.a", "I.3.b", "I.3.c", "III", "II.1.a", "II.1.b", "II.1.c", "II.2.a", "II.2.b", "II.2.c", "III.3.a", "III.3.b", "II.3.c", "III.1.a", "III.1.b", "III.3.c", "III.1.c", "III.2.a", "III.2.b", "III.2.c" ] files = rrr.customsorted(files) self.assertEqual(files, [ "I.1.a", "I.1.b", "I.1.c", "I.2.a", "I.2.b", "I.2.c", "I.3.a", "I.3.b", "I.3.c", "II.1.a", "II.1.b", "II.1.c", "II.2.a", "II.2.b", "II.2.c", "II.3.a", "II.3.b", "II.3.c", "III", "III.1.a", "III.1.b", "III.1.c", "III.2.a", "III.2.b", "III.2.c", "III.3.a", "III.3.b", "III.3.c" ])
def test_sorts_roman_8_and_9_correctly_with_text_afterwards(self): files = ["VIII text", "IX text"] files = rrr.customsorted(files) self.assertEqual(files, ["VIII text", "IX text"])
def test_sorts_roman_8_and_9_correctly(self): files = ["IX", "VIII"] files = rrr.customsorted(files) self.assertEqual(files, ["VIII", "IX"])
def test_sorts_i_a_followed_by_roman_numeral_followed_by_text(self): files = ["1.a.VIII text", "1.a.IX text"] files = rrr.customsorted(files) self.assertEqual(files, ["1.a.VIII text", "1.a.IX text"])
def test_sorts_simple_roman_numerals(self): files = ["X", "IX", "VIII", "VII", "VI", "V", "IV", "III", "II", "I"] files = rrr.customsorted(files) self.assertEqual( files, ["I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X"])
def test_sorts_roman_8_and_9_correctly_with_text_afterwards(self): files = ["VIII text","IX text"] files = rrr.customsorted(files) self.assertEqual(files,["VIII text","IX text"])
def test_sorts_simple_numbers(self): files = ["1", "2", "3", "4", "5", "6", "10", "7", "8", "9"] files = rrr.customsorted(files) self.assertEqual(files, ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"])
def test_sorts_roman_8_and_9_correctly(self): files = ["IX","VIII"] files = rrr.customsorted(files) self.assertEqual(files,["VIII","IX"])
def test_sorts_i_a_followed_by_roman_numeral_followed_by_text(self): files = ["1.a.VIII text","1.a.IX text"] files = rrr.customsorted(files) self.assertEqual(files,["1.a.VIII text","1.a.IX text"])
def test_sorts_multiple_levels(self): files = ["I.1.a","I.1.b","I.1.c","II.3.b","I.2.a","I.2.b","II.3.a","I.2.c","I.3.a","I.3.b","I.3.c","III","II.1.a","II.1.b","II.1.c","II.2.a","II.2.b","II.2.c","III.3.a","III.3.b","II.3.c","III.1.a","III.1.b","III.3.c","III.1.c","III.2.a","III.2.b","III.2.c"] files = rrr.customsorted(files) self.assertEqual(files,["I.1.a","I.1.b","I.1.c","I.2.a","I.2.b","I.2.c","I.3.a","I.3.b","I.3.c","II.1.a","II.1.b","II.1.c","II.2.a","II.2.b","II.2.c","II.3.a","II.3.b","II.3.c","III","III.1.a","III.1.b","III.1.c","III.2.a","III.2.b","III.2.c","III.3.a","III.3.b","III.3.c"])
def test_sorts_simple_roman_numerals(self): files = ["X","IX","VIII","VII","VI","V","IV","III","II","I"] files = rrr.customsorted(files) self.assertEqual(files,["I","II","III","IV","V","VI","VII","VIII","IX","X"])
def test_sorts_simple_numbers(self): files = ["1","2","3","4","5","6","10","7","8","9"] files = rrr.customsorted(files) self.assertEqual(files,["1","2","3","4","5","6","7","8","9","10"])