You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
133 lines
5.8 KiB
133 lines
5.8 KiB
commit 7778eda0e6e4280fb43aa78721561e43d3e866eb
|
|
Author: Osmo Salomaa <otsaloma@iki.fi>
|
|
Date: Sun Aug 4 21:19:20 2019 +0300
|
|
|
|
Accept any en* language for spell-check tests
|
|
|
|
diff --git a/aeidon/agents/test/test_text.py b/aeidon/agents/test/test_text.py
|
|
index bf6c4ac1..a2261595 100644
|
|
--- a/aeidon/agents/test/test_text.py
|
|
+++ b/aeidon/agents/test/test_text.py
|
|
@@ -78,14 +78,16 @@ class TestTextAgent(aeidon.TestCase):
|
|
for subtitle in self.project.subtitles:
|
|
subtitle.main_text = subtitle.main_text.replace("a", " a")
|
|
subtitle.main_text = subtitle.main_text.replace("e", "e ")
|
|
+ language = self.get_spell_check_language("en")
|
|
self.project.spell_check_join_words(indices=None,
|
|
doc=aeidon.documents.MAIN,
|
|
- language="en")
|
|
+ language=language)
|
|
|
|
def test_spell_check_split_words(self):
|
|
for subtitle in self.project.subtitles:
|
|
subtitle.main_text = subtitle.main_text.replace("s ", "s")
|
|
subtitle.main_text = subtitle.main_text.replace("y ", "y")
|
|
+ language = self.get_spell_check_language("en")
|
|
self.project.spell_check_split_words(indices=None,
|
|
doc=aeidon.documents.MAIN,
|
|
- language="en")
|
|
+ language=language)
|
|
diff --git a/aeidon/test/test_spell.py b/aeidon/test/test_spell.py
|
|
index 66369e0e..ff94f150 100644
|
|
--- a/aeidon/test/test_spell.py
|
|
+++ b/aeidon/test/test_spell.py
|
|
@@ -21,7 +21,8 @@ import aeidon
|
|
class TestSpellChecker(aeidon.TestCase):
|
|
|
|
def setup_method(self, method):
|
|
- self.checker = aeidon.SpellChecker("en")
|
|
+ language = self.get_spell_check_language("en")
|
|
+ self.checker = aeidon.SpellChecker(language)
|
|
|
|
def test_add_replacement(self):
|
|
self.checker.add_replacement("abc", "xyz")
|
|
@@ -50,7 +51,8 @@ class TestSpellChecker(aeidon.TestCase):
|
|
class TestSpellCheckNavigator(aeidon.TestCase):
|
|
|
|
def setup_method(self, method):
|
|
- self.navigator = aeidon.SpellCheckNavigator("en")
|
|
+ language = language = self.get_spell_check_language("en")
|
|
+ self.navigator = aeidon.SpellCheckNavigator(language)
|
|
self.navigator.text = "She knows the fighting\ntechniques of Panzer Kunst."
|
|
|
|
def test_ignore(self):
|
|
diff --git a/aeidon/unittest.py b/aeidon/unittest.py
|
|
index 8c384806..d80c5a22 100644
|
|
--- a/aeidon/unittest.py
|
|
+++ b/aeidon/unittest.py
|
|
@@ -50,6 +50,15 @@ class TestCase:
|
|
with open(path, "r", encoding="ascii") as f:
|
|
return f.read().strip()
|
|
|
|
+ def get_spell_check_language(self, language):
|
|
+ """Return spell-check language to use in unit tests."""
|
|
+ # Allow any close-enough variant as different systems will have
|
|
+ # different spell-check engines and dictionaries installed.
|
|
+ for candidate in aeidon.SpellChecker.list_languages():
|
|
+ if candidate.startswith(language):
|
|
+ return candidate
|
|
+ raise Exception("Spell-check dictionary {}* not found".format(language))
|
|
+
|
|
def new_microdvd_file(self):
|
|
"""Return path to a new temporary MicroDVD file."""
|
|
return self.new_temp_file(aeidon.formats.MICRODVD)
|
|
diff --git a/gaupol/agents/test/test_tools.py b/gaupol/agents/test/test_tools.py
|
|
index a9fbdf8f..e1547476 100644
|
|
--- a/gaupol/agents/test/test_tools.py
|
|
+++ b/gaupol/agents/test/test_tools.py
|
|
@@ -36,7 +36,8 @@ class TestToolsAgent(gaupol.TestCase):
|
|
|
|
@patch("gaupol.util.flash_dialog", OK)
|
|
def test__on_check_spelling_activate(self):
|
|
- gaupol.conf.spell_check.language = "en"
|
|
+ language = self.get_spell_check_language("en")
|
|
+ gaupol.conf.spell_check.language = language
|
|
self.application.get_action("check-spelling").activate()
|
|
|
|
@patch("gaupol.util.flash_dialog", OK)
|
|
diff --git a/gaupol/dialogs/test/test_spell_check.py b/gaupol/dialogs/test/test_spell_check.py
|
|
index cbe7d61a..d74860fb 100644
|
|
--- a/gaupol/dialogs/test/test_spell_check.py
|
|
+++ b/gaupol/dialogs/test/test_spell_check.py
|
|
@@ -32,7 +32,8 @@ class TestSpellCheckDialog(gaupol.TestCase):
|
|
aeidon.SpellChecker.add_to_personal = aeidon.SpellChecker.add_to_session
|
|
aeidon.SpellChecker.read_replacements = lambda *args: None
|
|
aeidon.SpellChecker.write_replacements = lambda *args: None
|
|
- gaupol.conf.spell_check.language = "en"
|
|
+ language = self.get_spell_check_language("en")
|
|
+ gaupol.conf.spell_check.language = language
|
|
self.application = self.new_application()
|
|
for page in self.application.pages:
|
|
for subtitle in page.project.subtitles:
|
|
diff --git a/gaupol/test/test_spell.py b/gaupol/test/test_spell.py
|
|
index 72b74e33..5018abab 100644
|
|
--- a/gaupol/test/test_spell.py
|
|
+++ b/gaupol/test/test_spell.py
|
|
@@ -37,4 +37,5 @@ class TestSpellChecker(aeidon.TestCase):
|
|
Gtk.main()
|
|
|
|
def setup_method(self, method):
|
|
- self.checker = gaupol.SpellChecker("en")
|
|
+ language = self.get_spell_check_language("en")
|
|
+ self.checker = gaupol.SpellChecker(language)
|
|
|
|
commit 340b3bf6bb7cfdf5be9e973f25f5a616ef504702
|
|
Author: Osmo Salomaa <otsaloma@iki.fi>
|
|
Date: Mon Aug 5 02:31:32 2019 +0300
|
|
|
|
Set spell-check language for assistant test
|
|
|
|
diff --git a/gaupol/test/test_assistants.py b/gaupol/test/test_assistants.py
|
|
index 6969b273..4d6dfdcb 100644
|
|
--- a/gaupol/test/test_assistants.py
|
|
+++ b/gaupol/test/test_assistants.py
|
|
@@ -109,6 +109,8 @@ class TestJoinSplitWordsPage(_TestBuilderPage):
|
|
|
|
@patch("gaupol.util.flash_dialog", OK)
|
|
def test_correct_texts(self):
|
|
+ language = self.get_spell_check_language("en")
|
|
+ gaupol.conf.spell_check.language = language
|
|
self.page.correct_texts(self.project,
|
|
None,
|
|
aeidon.documents.MAIN)
|