mirror of https://gitlab.com/bashrc2/epicyon
Test that all translation labels exist
parent
d4631e105e
commit
c3822cba4e
43
tests.py
43
tests.py
|
@ -4168,6 +4168,48 @@ def _test_valid_content_warning():
|
||||||
assert result_str == 'Invalid content warning'
|
assert result_str == 'Invalid content warning'
|
||||||
|
|
||||||
|
|
||||||
|
def _test_translation_labels() -> None:
|
||||||
|
print('test_translation_labels')
|
||||||
|
lang_json = load_json('translations/en.json')
|
||||||
|
assert lang_json
|
||||||
|
for _, _, files in os.walk('.'):
|
||||||
|
for source_file in files:
|
||||||
|
if not source_file.endswith('.py'):
|
||||||
|
continue
|
||||||
|
if source_file.startswith('.#'):
|
||||||
|
continue
|
||||||
|
if source_file.startswith('flycheck_'):
|
||||||
|
continue
|
||||||
|
source_str = ''
|
||||||
|
with open(source_file, 'r') as file_source:
|
||||||
|
source_str = file_source.read()
|
||||||
|
if not source_str:
|
||||||
|
continue
|
||||||
|
if 'translate[' not in source_str:
|
||||||
|
continue
|
||||||
|
sections = source_str.split('translate[')
|
||||||
|
ctr = 0
|
||||||
|
for text in sections:
|
||||||
|
if ctr == 0:
|
||||||
|
ctr += 1
|
||||||
|
continue
|
||||||
|
if ']' not in text:
|
||||||
|
continue
|
||||||
|
label_str = text.split(']')[0]
|
||||||
|
if '"' not in label_str and "'" not in label_str:
|
||||||
|
continue
|
||||||
|
if '+' in label_str:
|
||||||
|
continue
|
||||||
|
label_str = label_str[1:]
|
||||||
|
label_str = label_str[:len(label_str)-1]
|
||||||
|
assert label_str
|
||||||
|
if not lang_json.get(label_str):
|
||||||
|
print("Translation for label '" + label_str + "' " +
|
||||||
|
"in module " + source_file + " was not found")
|
||||||
|
assert False
|
||||||
|
break
|
||||||
|
|
||||||
|
|
||||||
def _test_translations(base_dir: str) -> None:
|
def _test_translations(base_dir: str) -> None:
|
||||||
print('test_translations')
|
print('test_translations')
|
||||||
languages_str = get_supported_languages(base_dir)
|
languages_str = get_supported_languages(base_dir)
|
||||||
|
@ -7170,6 +7212,7 @@ def run_all_tests():
|
||||||
_test_checkbox_names()
|
_test_checkbox_names()
|
||||||
_test_thread_functions()
|
_test_thread_functions()
|
||||||
_test_functions()
|
_test_functions()
|
||||||
|
_test_translation_labels()
|
||||||
_test_color_contrast_value(base_dir)
|
_test_color_contrast_value(base_dir)
|
||||||
_test_diff_content()
|
_test_diff_content()
|
||||||
_test_bold_reading()
|
_test_bold_reading()
|
||||||
|
|
Loading…
Reference in New Issue