aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2017-08-28 19:39:17 +0800
committerStephen Finucane <stephen@that.guru>2017-08-31 09:43:01 +0100
commite505f1fd26224fc7dcadf43146bc1408a470fe15 (patch)
tree77a613713d8898564b0a30ef9319d083949ebd50
parent60fa7d3977cc719a5828768524358a99a7461d3e (diff)
downloadpatchwork-e505f1fd26224fc7dcadf43146bc1408a470fe15.tar
patchwork-e505f1fd26224fc7dcadf43146bc1408a470fe15.tar.gz
tests: Run FuzzTest within a transaction
Currently, the FuzzTests fail for me with: /backends/base/base.py", line 428, in validate_no_broken_transaction "An error occurred in the current transaction. You can't " TransactionManagementError: An error occurred in the current transaction. You can't execute queries until the end of the 'atomic' block. - because the SQL inserts can fail, during an active transaction (the first failure I see is attempting to insert \0 chars in codec-null.mbox); this causes the setup for the next test case to fail. Instead, run each test in its own transaction. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Reviewed-by: Stephen Finucane <stephen@that.guru>
-rw-r--r--patchwork/tests/test_parser.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/patchwork/tests/test_parser.py b/patchwork/tests/test_parser.py
index 583dfcc..c21040e 100644
--- a/patchwork/tests/test_parser.py
+++ b/patchwork/tests/test_parser.py
@@ -26,6 +26,7 @@ import os
import unittest
from django.test import TestCase
+from django.test import TransactionTestCase
from django.utils import six
from patchwork.models import Comment
@@ -865,7 +866,7 @@ class SubjectTest(TestCase):
self.assertEqual(parse_version('Hello, world (V6)', []), 6)
-class FuzzTest(TestCase):
+class FuzzTest(TransactionTestCase):
"""Test fuzzed patches."""
def setUp(self):
create_project(listid='patchwork.ozlabs.org')