Made a couple of changes for readability and correctness in loaddata.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17055 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
0a1a9b71fa
commit
bebbc9e4a5
|
@ -62,7 +62,7 @@ class Command(BaseCommand):
|
|||
fixture_object_count = 0
|
||||
models = set()
|
||||
|
||||
humanize = lambda dirname: dirname and "'%s'" % dirname or 'absolute path'
|
||||
humanize = lambda dirname: "'%s'" % dirname if dirname else 'absolute path'
|
||||
|
||||
# Get a cursor (even though we don't need one yet). This has
|
||||
# the side effect of initializing the test database (if
|
||||
|
@ -160,6 +160,11 @@ class Command(BaseCommand):
|
|||
open_method = compression_types[compression_format]
|
||||
try:
|
||||
fixture = open_method(full_path, 'r')
|
||||
except IOError:
|
||||
if verbosity >= 2:
|
||||
self.stdout.write("No %s fixture '%s' in %s.\n" % \
|
||||
(format, fixture_name, humanize(fixture_dir)))
|
||||
else:
|
||||
if label_found:
|
||||
fixture.close()
|
||||
self.stderr.write(self.style.ERROR("Multiple fixtures named '%s' in %s. Aborting.\n" %
|
||||
|
@ -232,11 +237,6 @@ class Command(BaseCommand):
|
|||
transaction.leave_transaction_management(using=using)
|
||||
return
|
||||
|
||||
except Exception, e:
|
||||
if verbosity >= 2:
|
||||
self.stdout.write("No %s fixture '%s' in %s.\n" % \
|
||||
(format, fixture_name, humanize(fixture_dir)))
|
||||
|
||||
# If we found even one object in a fixture, we need to reset the
|
||||
# database sequences.
|
||||
if loaded_object_count > 0:
|
||||
|
|
|
@ -405,6 +405,18 @@ class TestFixtures(TestCase):
|
|||
stderr.getvalue(), 'No database fixture specified. Please provide the path of at least one fixture in the command line.\n'
|
||||
)
|
||||
|
||||
def test_loaddata_not_existant_fixture_file(self):
|
||||
stdout_output = StringIO()
|
||||
management.call_command(
|
||||
'loaddata',
|
||||
'this_fixture_doesnt_exist',
|
||||
verbosity=2,
|
||||
commit=False,
|
||||
stdout=stdout_output,
|
||||
)
|
||||
self.assertTrue("No xml fixture 'this_fixture_doesnt_exist' in" in
|
||||
stdout_output.getvalue())
|
||||
|
||||
|
||||
class NaturalKeyFixtureTests(TestCase):
|
||||
|
||||
|
|
Loading…
Reference in New Issue