1919'''
2020
2121
22+ def test_ds_ini (testdir , monkeypatch ):
23+ monkeypatch .delenv ('DJANGO_SETTINGS_MODULE' )
24+ testdir .makeini ("""
25+ [pytest]
26+ DJANGO_SETTINGS_MODULE = tpkg.settings_ini
27+ """ )
28+ pkg = testdir .mkpydir ('tpkg' )
29+ pkg .join ('settings_ini.py' ).write (BARE_SETTINGS )
30+ testdir .makepyfile ("""
31+ import os
32+
33+ def test_ds():
34+ assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_ini'
35+ """ )
36+ result = testdir .runpytest_subprocess ()
37+ assert result .parseoutcomes ()['passed' ] == 1
38+ result .stdout .fnmatch_lines (['django settings: tpkg.settings_ini (from ini file)*' ])
39+ assert result .ret == 0
40+
41+
2242def test_ds_env (testdir , monkeypatch ):
2343 monkeypatch .setenv ('DJANGO_SETTINGS_MODULE' , 'tpkg.settings_env' )
2444 pkg = testdir .mkpydir ('tpkg' )
@@ -31,48 +51,49 @@ def test_settings():
3151 assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_env'
3252 """ )
3353 result = testdir .runpytest_subprocess ()
34- result .stdout .fnmatch_lines (['*1 passed*' ])
35- assert result .ret == 0
54+ result .stdout .fnmatch_lines (['django settings: tpkg.settings_env (from '
55+ 'environment variable)*' ])
56+ assert result .parseoutcomes ()['passed' ] == 1
3657
3758
38- def test_ds_ini (testdir , monkeypatch ):
39- "DSM env should override ini."
40- monkeypatch .setenv ('DJANGO_SETTINGS_MODULE' , 'tpkg.settings_ini' )
41- testdir .makeini ("""\
59+ def test_ds_option (testdir , monkeypatch ):
60+ monkeypatch .setenv ('DJANGO_SETTINGS_MODULE' , 'DO_NOT_USE_env' )
61+ testdir .makeini ("""
4262 [pytest]
4363 DJANGO_SETTINGS_MODULE = DO_NOT_USE_ini
4464 """ )
4565 pkg = testdir .mkpydir ('tpkg' )
46- settings = pkg .join ('settings_ini .py' )
66+ settings = pkg .join ('settings_opt .py' )
4767 settings .write (BARE_SETTINGS )
4868 testdir .makepyfile ("""
4969 import os
5070
5171 def test_ds():
52- assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_ini '
72+ assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_opt '
5373 """ )
54- result = testdir .runpytest_subprocess ()
55- result .stdout .fnmatch_lines (['*1 passed* ' ])
56- assert result .ret == 0
74+ result = testdir .runpytest_subprocess ('--ds=tpkg.settings_opt' )
75+ result .stdout .fnmatch_lines (['django settings: tpkg.settings_opt (from command line option) ' ])
76+ assert result .parseoutcomes ()[ 'passed' ] == 1
5777
5878
59- def test_ds_option (testdir , monkeypatch ):
60- monkeypatch .setenv ('DJANGO_SETTINGS_MODULE' , 'DO_NOT_USE_env' )
61- testdir .makeini ("""
79+ def test_ds_env_override_ini (testdir , monkeypatch ):
80+ "DSM env should override ini."
81+ monkeypatch .setenv ('DJANGO_SETTINGS_MODULE' , 'tpkg.settings_env' )
82+ testdir .makeini ("""\
6283 [pytest]
6384 DJANGO_SETTINGS_MODULE = DO_NOT_USE_ini
6485 """ )
6586 pkg = testdir .mkpydir ('tpkg' )
66- settings = pkg .join ('settings_opt .py' )
87+ settings = pkg .join ('settings_env .py' )
6788 settings .write (BARE_SETTINGS )
6889 testdir .makepyfile ("""
6990 import os
7091
7192 def test_ds():
72- assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_opt '
93+ assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_env '
7394 """ )
74- result = testdir .runpytest_subprocess ('--ds=tpkg.settings_opt' )
75- result .stdout . fnmatch_lines ([ '*1 passed*' ])
95+ result = testdir .runpytest_subprocess ()
96+ assert result .parseoutcomes ()[ ' passed' ] == 1
7697 assert result .ret == 0
7798
7899
0 commit comments