Corp/backend/eusrr_backend/settings_test.py
lizerk 6e4eabeb4e test: Configure Celery for integration tests and setup Redis
- Add Celery synchronous execution settings for tests
  * CELERY_TASK_ALWAYS_EAGER = True (no separate worker needed)
  * CELERY_TASK_EAGER_PROPAGATES = True
  * Use memory broker/backend for tests

- Add performance marker to pytest.ini
  * Allows marking tests with @pytest.mark.performance

- Setup Redis server via systemd
  * Enabled redis-server.service for autostart
  * Redis runs on 127.0.0.1:6379

- Update .gitignore to exclude dump.rdb (Redis dump file)

Integration tests status:
- 26/47 tests passing (55%)
- 21 tests failing due to missing NotificationType fixtures
- Tests no longer hang (Celery executes synchronously)

Note: Integration tests require NotificationType fixtures to be created
before document operations trigger notification signals.
2026-03-05 11:49:55 +03:00

19 lines
560 B
Python

"""
Настройки для тестов - используют InMemoryChannelLayer вместо Redis.
"""
from .settings import * # noqa
# Используем InMemoryChannelLayer для тестов
CHANNEL_LAYERS = {
"default": {
"BACKEND": "channels.layers.InMemoryChannelLayer"
}
}
# Celery - синхронное выполнение в тестах (без отдельного worker)
CELERY_TASK_ALWAYS_EAGER = True
CELERY_TASK_EAGER_PROPAGATES = True
CELERY_BROKER_URL = 'memory://'
CELERY_RESULT_BACKEND = 'cache+memory://'