Coverage for app/venv/lib/python3.14/site-packages/weblate/trans/exceptions.py: 82%

11 statements  

« prev     ^ index     » next       coverage.py v7.15.2, created at 2026-10-07 07:15 +0000

1# Copyright © Michal Čihař <michal@weblate.org> 

2# 

3# SPDX-License-Identifier: GPL-3.0-or-later 

4from __future__ import annotations 

5 

6 

7class WeblateError(Exception): 

8 """Base class for Weblate errors.""" 

9 

10 def __init__(self, message=None) -> None: 

11 super().__init__(message or self.__doc__) 

12 

13 

14class FileParseError(WeblateError): 

15 """File parse error.""" 

16 

17 

18class PluralFormsMismatchError(WeblateError): 

19 """Plural forms do not match the language.""" 

20 

21 

22class InvalidTemplateError(WeblateError): 

23 """Template file can not be parsed.""" 

24 

25 def __init__(self, message: str | None = None, info: str = "") -> None: 

26 super().__init__(message or f"Template file can not be parsed: {info}") 

27 

28 

29class FailedCommitError(WeblateError): 

30 """Could not commit file.""" 

31 

32 

33class SuggestionSimilarToTranslationError(WeblateError): 

34 """Target of the Suggestion is similar to source."""