Coverage for blind_charging/config.py: 71%

14 statements  

« prev     ^ index     » next       coverage.py v6.5.0, created at 2023-02-17 20:36 +0000

1from typing import Optional, Union 

2 

3from .locale import Locale 

4 

5_locale: Optional[Locale] = None 

6"""Configured locale.""" 

7 

8 

9def set_locale(locale: Union[Locale, str]): 

10 """Set the default locale to use for masking. 

11 

12 :param locale: Name of the location 

13 """ 

14 global _locale 

15 if isinstance(locale, str): 

16 _locale = Locale.get(locale) 

17 elif isinstance(locale, Locale): 

18 _locale = locale 

19 else: 

20 raise TypeError(f"Unexpected locale of type {type(locale)}") 

21 

22 

23def get_locale() -> Locale: 

24 """Get the currently configured locale. 

25 

26 :returns Locale: 

27 """ 

28 if not _locale: 

29 raise RuntimeError("Locale is not configured yet") 

30 return _locale