File: __init__.py

package info (click to toggle)
django-cte 2.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 356 kB
  • sloc: python: 3,245; makefile: 7
file content (34 lines) | stat: -rw-r--r-- 813 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import os
import warnings
from contextlib import contextmanager

import django
from unmagic import fixture

# django setup must occur before importing models
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "tests.settings")
django.setup()

from .django_setup import init_db, destroy_db  # noqa


@fixture(autouse=__file__, scope="package")
def test_db():
    with ignore_v1_warnings():
        init_db()
    yield
    destroy_db()


@contextmanager
def ignore_v1_warnings():
    msg = (
        r"CTE(Manager|QuerySet) is deprecated.*"
        r"|"
        r"Use `django_cte\.with_cte\(.*\)` instead\."
        r"|"
        r"Use `django_cte\.CTE(\.recursive)?` instead\."
    )
    with warnings.catch_warnings():
        warnings.filterwarnings("ignore", message=msg, category=DeprecationWarning)
        yield