diff options
| author | Ramiro Morales <cramm0@gmail.com> | 2011-10-17 03:29:07 +0000 |
|---|---|---|
| committer | Ramiro Morales <cramm0@gmail.com> | 2011-10-17 03:29:07 +0000 |
| commit | da5c766dbbff0b85d8782c4384e44bac804afc53 (patch) | |
| tree | 338065ca0feacd43a35e5708e145aa49c864e5f3 | |
| parent | ab72e6bdd1e42dce83fd7dba35919d6468d8ada3 (diff) | |
Tweaked test added in r16873 so it also works with Oracle.
* Changed invalid fixture from trying to insert a NULL value in a
null=False CharField to try with a DateTimeField instead because our
Oracle backend allows NULLs for CharFields than can be blank and that
insert wouldn't generate an error.
* cx_Oracle raises a
`DatabaseError: Could not load fixtures.Article(pk=1): ORA-01407: cannot update ("USER_DEFAULT"."FIXTURES_ARTICLE"."PUB_DATE") to NULL'`
instead of an IntegrityError like the rest of the DB-API drivers we
support, changed the error message we test for to start simply with
'Error' to catch both messages.
We might want to consider converting DatabaseError to IntegrityError
in the backend when the error code is ORA-1407.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17002 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | tests/modeltests/fixtures/fixtures/invalid.json | 4 | ||||
| -rw-r--r-- | tests/modeltests/fixtures/tests.py | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/tests/modeltests/fixtures/fixtures/invalid.json b/tests/modeltests/fixtures/fixtures/invalid.json index 97121ca84f..fb69f7c949 100644 --- a/tests/modeltests/fixtures/fixtures/invalid.json +++ b/tests/modeltests/fixtures/fixtures/invalid.json @@ -3,8 +3,8 @@ "pk": "1", "model": "fixtures.article", "fields": { - "headline": null, - "pub_date": "2006-06-16 13:00:00" + "headline": "Breaking news", + "pub_date": null } } ] diff --git a/tests/modeltests/fixtures/tests.py b/tests/modeltests/fixtures/tests.py index 16c5bfe0d7..2dca7ced9c 100644 --- a/tests/modeltests/fixtures/tests.py +++ b/tests/modeltests/fixtures/tests.py @@ -269,7 +269,7 @@ class FixtureLoadingTests(TestCase): new_io = StringIO.StringIO() management.call_command('loaddata', 'invalid.json', verbosity=0, stderr=new_io, commit=False) output = new_io.getvalue().strip().split('\n') - self.assertRegexpMatches(output[-1], "IntegrityError: Could not load fixtures.Article\(pk=1\): .*$") + self.assertRegexpMatches(output[-1], "Error: Could not load fixtures.Article\(pk=1\): .*$") def test_loading_using(self): # Load db fixtures 1 and 2. These will load using the 'default' database identifier explicitly |
