Как выполнить юнит-тестирование с разными настройками в Django?

Есть ли простой механизм переопределения настроек Django для юнит-теста? У меня есть менеджер на одной из моих моделей, который возвращает определенное количество последних объектов. Количество возвращаемых объектов определяется параметром NUM_LATEST.

Это может сделать мои тесты неудачными, если кто-то изменит настройки. Как я могу переопределить настройки наsetUp() и впоследствии восстановить их наtearDown()? Если это невозможно, могу ли я как-то обезопасить патч или смоделировать настройки?

РЕДАКТИРОВАТЬ: Вот мой код менеджера:

class LatestManager(models.Manager):
    """
    Returns a specific number of the most recent public Articles as defined by 
    the NEWS_LATEST_MAX setting.
    """
    def get_query_set(self):
        num_latest = getattr(settings, 'NEWS_NUM_LATEST', 10)
        return super(LatestManager, self).get_query_set().filter(is_public=True)[:num_latest]

Менеджер используетsettings.NEWS_LATEST_MAX нарезать набор запросов.getattr() просто используется для предоставления значения по умолчанию, если параметр не существует.

Ответы на вопрос(8)

Ваш ответ на вопрос