summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSenko Rasic <senko.rasic@dobarkod.hr>2013-05-18 17:51:14 +0200
committerSenko Rasic <senko.rasic@dobarkod.hr>2013-05-19 10:56:09 +0200
commitcc3b3ba93a7bfdd2ece739e97e36150a719acd3e (patch)
tree6a54337aa8f1ca72e1bb1bf1eefa3b09f09131f4 /tests
parent0a50311063c416ec4d39f518e8d8110dd7eddbdf (diff)
Fixed #18990: Loaddata now complains if fixture doesn't exist
The fixture named "initial_data" is exceptional though; if it doesn't exist, the error is not raised. This allows syncdb and flush management commands to attempt to load it without causing an error if it doesn't exist.
Diffstat (limited to 'tests')
-rw-r--r--tests/fixtures/tests.py17
-rw-r--r--tests/fixtures_regress/tests.py15
2 files changed, 20 insertions, 12 deletions
diff --git a/tests/fixtures/tests.py b/tests/fixtures/tests.py
index 103612198e..93f2438ce9 100644
--- a/tests/fixtures/tests.py
+++ b/tests/fixtures/tests.py
@@ -137,8 +137,14 @@ class FixtureLoadingTests(DumpDataAssertMixin, TestCase):
'<Book: Music for all ages by Artist formerly known as "Prince" and Django Reinhardt>'
])
- # Load a fixture that doesn't exist
- management.call_command('loaddata', 'unknown.json', verbosity=0, commit=False)
+ # Loading a fixture that doesn't exist results in an error
+ with self.assertRaises(management.CommandError):
+ management.call_command('loaddata', 'unknown.json', verbosity=0,
+ commit=False)
+
+ # An attempt to load a nonexistent 'initial_data' fixture isn't an error
+ management.call_command('loaddata', 'initial_data.json', verbosity=0,
+ commit=False)
# object list is unaffected
self.assertQuerysetEqual(Article.objects.all(), [
@@ -273,10 +279,11 @@ class FixtureLoadingTests(DumpDataAssertMixin, TestCase):
def test_unmatched_identifier_loading(self):
# Try to load db fixture 3. This won't load because the database identifier doesn't match
- management.call_command('loaddata', 'db_fixture_3', verbosity=0, commit=False)
- self.assertQuerysetEqual(Article.objects.all(), [])
+ with self.assertRaises(management.CommandError):
+ management.call_command('loaddata', 'db_fixture_3', verbosity=0, commit=False)
- management.call_command('loaddata', 'db_fixture_3', verbosity=0, using='default', commit=False)
+ with self.assertRaises(management.CommandError):
+ management.call_command('loaddata', 'db_fixture_3', verbosity=0, using='default', commit=False)
self.assertQuerysetEqual(Article.objects.all(), [])
def test_output_formats(self):
diff --git a/tests/fixtures_regress/tests.py b/tests/fixtures_regress/tests.py
index 02e923e386..df84d77a3f 100644
--- a/tests/fixtures_regress/tests.py
+++ b/tests/fixtures_regress/tests.py
@@ -441,13 +441,14 @@ class TestFixtures(TestCase):
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,
- )
+ with self.assertRaises(management.CommandError):
+ 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
force_text(stdout_output.getvalue()))