Re-enable translation of linter messages

This commit is contained in:
Sebastian Serth
2021-06-28 22:11:00 +02:00
parent d08707f62e
commit 7010614a75
2 changed files with 6 additions and 4 deletions

View File

@ -33,7 +33,9 @@ module SubmissionScoring
if file.teacher_defined_linter?
LinterCheckRun.create_from(testrun, assessment)
assessment = assessor.translate_linter(assessment, session[:locale])
switch_locale do
assessment = assessor.translate_linter(assessment, I18n.locale)
end
# replace file name with hint if linter is not used for grading. Refactor!
filename = t('exercises.implement.not_graded') if file.weight.zero?

View File

@ -97,8 +97,8 @@ detailed_linter_results: assertion_error_matches}
# key might be "linter.#{severity}.#{name}.#{key}.#{value}"
# or something like "linter.#{severity}.#{name}.replacement"
translation = I18n.t(key, default: default)
key.delete_suffix!(".#{default}") # Remove any custom prefix, might have no effect
keys = key.split('.')
cleaned_key = key.delete_suffix(".#{default}") # Remove any custom prefix, might have no effect
keys = cleaned_key.split('.')
final_key = keys.pop
log_missing = if %w[actual suggestion context line].include?(final_key)
# SyntaxErrors: These are dynamic and won't get translated
@ -107,7 +107,7 @@ detailed_linter_results: assertion_error_matches}
# Read config key
I18n.t(keys.append('log_missing').join('.'), default: false)
end
Sentry.capture_message({key: key, default: default}.to_json) if translation == default && log_missing
Sentry.capture_message({key: cleaned_key, default: default}.to_json) if translation == default && log_missing
translation
end
end