1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- """
- Helper functions for testing.
- """
- import locale
- import logging
- import sys
- import warnings
- import matplotlib as mpl
- from matplotlib import cbook
- _log = logging.getLogger(__name__)
- @cbook.deprecated("3.2")
- def is_called_from_pytest():
- """Whether we are in a pytest run."""
- return getattr(mpl, '_called_from_pytest', False)
- def set_font_settings_for_testing():
- mpl.rcParams['font.family'] = 'DejaVu Sans'
- mpl.rcParams['text.hinting'] = 'none'
- mpl.rcParams['text.hinting_factor'] = 8
- def set_reproducibility_for_testing():
- mpl.rcParams['svg.hashsalt'] = 'matplotlib'
- def setup():
- # The baseline images are created in this locale, so we should use
- # it during all of the tests.
- try:
- locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
- except locale.Error:
- try:
- locale.setlocale(locale.LC_ALL, 'English_United States.1252')
- except locale.Error:
- _log.warning(
- "Could not set locale to English/United States. "
- "Some date-related tests may fail.")
- mpl.use('Agg')
- with cbook._suppress_matplotlib_deprecation_warning():
- mpl.rcdefaults() # Start with all defaults
- # These settings *must* be hardcoded for running the comparison tests and
- # are not necessarily the default values as specified in rcsetup.py.
- set_font_settings_for_testing()
- set_reproducibility_for_testing()
|