test03_capitalization.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. from os import environ, unlink
  2. from unittest import TestCase
  3. from scriptshifter.trans import transliterate
  4. from scriptshifter.tables import init_db
  5. def setUpModule():
  6. init_db()
  7. def tearDownModule():
  8. unlink(environ["TXL_DB_PATH"])
  9. class TestCapitalization(TestCase):
  10. """
  11. Test capitalization.
  12. """
  13. def test_cap(self):
  14. tbl = "cap_inherited"
  15. in_str = "зг іо"
  16. tx = transliterate(in_str, tbl)[0]
  17. tx_cap = transliterate(in_str, tbl, capitalize="first")[0]
  18. tx_all = transliterate(in_str, tbl, capitalize="all")[0]
  19. self.assertEqual(tx, "zh io")
  20. self.assertEqual(tx_cap, "Zh io")
  21. self.assertEqual(tx_all, "Zh Io")
  22. def test_cap_ligatures(self):
  23. tbl = "cap_inherited"
  24. in_str = "жзг ёіо зг іо"
  25. tx = transliterate(in_str, tbl)[0]
  26. tx_cap = transliterate(in_str, tbl, capitalize="first")[0]
  27. tx_all = transliterate(in_str, tbl, capitalize="all")[0]
  28. self.assertEqual(tx, "z︠h︡zh i︠o︡io zh io")
  29. self.assertEqual(tx_cap, "Z︠H︡zh i︠o︡io zh io")
  30. self.assertEqual(tx_all, "Z︠H︡zh I︠o︡io Zh Io")