Refs #22258 -- Fixed an unclosed temporary file in fixtures test.
This prevented the temporary directory from being removed on Windows.
This commit is contained in:
parent
4283a03843
commit
eaa3c88345
|
@ -9,6 +9,7 @@ import warnings
|
||||||
from django.apps import apps
|
from django.apps import apps
|
||||||
from django.contrib.sites.models import Site
|
from django.contrib.sites.models import Site
|
||||||
from django.core import management
|
from django.core import management
|
||||||
|
from django.core.files.temp import NamedTemporaryFile
|
||||||
from django.core.serializers.base import ProgressBar
|
from django.core.serializers.base import ProgressBar
|
||||||
from django.db import IntegrityError, connection
|
from django.db import IntegrityError, connection
|
||||||
from django.test import (
|
from django.test import (
|
||||||
|
@ -295,22 +296,22 @@ class FixtureLoadingTests(DumpDataAssertMixin, TestCase):
|
||||||
management.call_command('loaddata', 'fixture1.json', verbosity=0)
|
management.call_command('loaddata', 'fixture1.json', verbosity=0)
|
||||||
new_io = six.StringIO()
|
new_io = six.StringIO()
|
||||||
new_io.isatty = lambda: True
|
new_io.isatty = lambda: True
|
||||||
_, filename = tempfile.mkstemp()
|
with NamedTemporaryFile() as file:
|
||||||
options = {
|
options = {
|
||||||
'format': 'json',
|
'format': 'json',
|
||||||
'stdout': new_io,
|
'stdout': new_io,
|
||||||
'stderr': new_io,
|
'stderr': new_io,
|
||||||
'output': filename,
|
'output': file.name,
|
||||||
}
|
}
|
||||||
management.call_command('dumpdata', 'fixtures', **options)
|
management.call_command('dumpdata', 'fixtures', **options)
|
||||||
self.assertTrue(new_io.getvalue().endswith('[' + '.' * ProgressBar.progress_width + ']\n'))
|
self.assertTrue(new_io.getvalue().endswith('[' + '.' * ProgressBar.progress_width + ']\n'))
|
||||||
|
|
||||||
# Test no progress bar when verbosity = 0
|
# Test no progress bar when verbosity = 0
|
||||||
options['verbosity'] = 0
|
options['verbosity'] = 0
|
||||||
new_io = six.StringIO()
|
new_io = six.StringIO()
|
||||||
new_io.isatty = lambda: True
|
new_io.isatty = lambda: True
|
||||||
management.call_command('dumpdata', 'fixtures', **options)
|
management.call_command('dumpdata', 'fixtures', **options)
|
||||||
self.assertEqual(new_io.getvalue(), '')
|
self.assertEqual(new_io.getvalue(), '')
|
||||||
|
|
||||||
def test_compress_format_loading(self):
|
def test_compress_format_loading(self):
|
||||||
# Load fixture 4 (compressed), using format specification
|
# Load fixture 4 (compressed), using format specification
|
||||||
|
|
Loading…
Reference in New Issue