19
19
'''
20
20
21
21
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
+
22
42
def test_ds_env (testdir , monkeypatch ):
23
43
monkeypatch .setenv ('DJANGO_SETTINGS_MODULE' , 'tpkg.settings_env' )
24
44
pkg = testdir .mkpydir ('tpkg' )
@@ -31,48 +51,49 @@ def test_settings():
31
51
assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_env'
32
52
""" )
33
53
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
36
57
37
58
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 ("""
42
62
[pytest]
43
63
DJANGO_SETTINGS_MODULE = DO_NOT_USE_ini
44
64
""" )
45
65
pkg = testdir .mkpydir ('tpkg' )
46
- settings = pkg .join ('settings_ini .py' )
66
+ settings = pkg .join ('settings_opt .py' )
47
67
settings .write (BARE_SETTINGS )
48
68
testdir .makepyfile ("""
49
69
import os
50
70
51
71
def test_ds():
52
- assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_ini '
72
+ assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_opt '
53
73
""" )
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
57
77
58
78
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 ("""\
62
83
[pytest]
63
84
DJANGO_SETTINGS_MODULE = DO_NOT_USE_ini
64
85
""" )
65
86
pkg = testdir .mkpydir ('tpkg' )
66
- settings = pkg .join ('settings_opt .py' )
87
+ settings = pkg .join ('settings_env .py' )
67
88
settings .write (BARE_SETTINGS )
68
89
testdir .makepyfile ("""
69
90
import os
70
91
71
92
def test_ds():
72
- assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_opt '
93
+ assert os.environ['DJANGO_SETTINGS_MODULE'] == 'tpkg.settings_env '
73
94
""" )
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
76
97
assert result .ret == 0
77
98
78
99
0 commit comments