@@ -64,8 +64,6 @@ class BundleListTest(TestCase):
class BundleTestBase(TestCase):
- fixtures = ['default_states']
-
def setUp(self, count=3):
self.user = create_user()
self.client.login(username=self.user.username,
@@ -29,7 +29,6 @@ from patchwork.tests.utils import create_user
class PatchChecksTest(TransactionTestCase):
- fixtures = ['default_tags', 'default_states']
def setUp(self):
self.patch = create_patches()[0]
@@ -27,7 +27,6 @@ from patchwork.tests.utils import create_patches
class CoverLetterViewTest(TestCase):
- fixtures = ['default_states']
def test_redirect(self):
patches = create_patches()
@@ -41,7 +40,6 @@ class CoverLetterViewTest(TestCase):
class PatchViewTest(TestCase):
- fixtures = ['default_states']
def test_redirect(self):
covers = create_covers()
@@ -26,8 +26,6 @@ from patchwork.tests.utils import read_patch
class UTF8PatchViewTest(TestCase):
- fixtures = ['default_states']
-
def setUp(self):
patch_content = read_patch('0002-utf-8.patch', encoding='utf-8')
self.patch = create_patch(diff=patch_content)
@@ -50,8 +48,6 @@ class UTF8PatchViewTest(TestCase):
class UTF8HeaderPatchViewTest(UTF8PatchViewTest):
- fixtures = ['default_states']
-
def setUp(self):
author = create_person(name=u'P\xe4tch Author')
patch_content = read_patch('0002-utf-8.patch', encoding='utf-8')
@@ -32,8 +32,6 @@ from patchwork.utils import do_expiry
class TestRegistrationExpiry(TestCase):
- fixtures = ['default_states']
-
def register(self, date):
user = create_user()
user.is_active = False
@@ -44,8 +44,6 @@ class EmptyPatchListTest(TestCase):
class PatchOrderTest(TestCase):
- fixtures = ['default_states']
-
d = datetime.datetime
patchmeta = [
('AlCMyjOsx', 'AlxMyjOsx@nRbqkQV.wBw',
@@ -38,8 +38,6 @@ class MboxPatchResponseTest(TestCase):
"""Test that the mbox view appends the Acked-by from a patch comment."""
- fixtures = ['default_states']
-
def setUp(self):
project = create_project()
self.person = create_person()
@@ -62,8 +60,6 @@ class MboxPatchSplitResponseTest(TestCase):
"""Test that the mbox view appends the Acked-by from a patch comment,
and places it before an '---' update line."""
- fixtures = ['default_states']
-
def setUp(self):
project = create_project()
self.person = create_person()
@@ -86,8 +82,6 @@ class MboxHeaderTest(TestCase):
"""Test the passthrough and generation of various headers."""
- fixtures = ['default_states']
-
def test_header_passthrough_cc(self):
"""Validate passthrough of 'Cc' header."""
header = 'Cc: CC Person <cc@example.com>'
@@ -164,8 +158,6 @@ class MboxHeaderTest(TestCase):
class MboxCommentPostcriptUnchangedTest(TestCase):
- fixtures = ['default_states']
-
def test_comment_unchanged(self):
"""Validate postscript part of mail is unchanged.
@@ -25,10 +25,10 @@ from django.test import TestCase
from patchwork.models import EmailOptout
from patchwork.models import PatchChangeNotification
-from patchwork.models import State
from patchwork.tests.utils import create_patch
from patchwork.tests.utils import create_patches
from patchwork.tests.utils import create_project
+from patchwork.tests.utils import create_state
from patchwork.utils import send_notifications
@@ -36,8 +36,6 @@ class PatchNotificationModelTest(TestCase):
"""Tests for the creation and update of the PatchChangeNotifications."""
- fixtures = ['default_states']
-
def setUp(self):
self.project = create_project(send_notifications=True)
@@ -59,7 +57,7 @@ class PatchNotificationModelTest(TestCase):
"""Ensure we get a notification for interesting patch changes"""
patch = create_patch(project=self.project)
oldstate = patch.state
- state = State.objects.exclude(pk=oldstate.pk)[0]
+ state = create_state()
patch.state = state
patch.save()
@@ -73,7 +71,7 @@ class PatchNotificationModelTest(TestCase):
"""Ensure we cancel notifications that are no longer valid"""
patch = create_patch(project=self.project)
oldstate = patch.state
- state = State.objects.exclude(pk=oldstate.pk)[0]
+ state = create_state()
patch.state = state
patch.save()
@@ -88,7 +86,7 @@ class PatchNotificationModelTest(TestCase):
but keep the original patch details"""
patch = create_patch(project=self.project)
oldstate = patch.state
- newstates = State.objects.exclude(pk=oldstate.pk)[:2]
+ newstates = [create_state(), create_state()]
patch.state = newstates[0]
patch.save()
@@ -109,8 +107,7 @@ class PatchNotificationModelTest(TestCase):
"""Ensure we don't see notifications created when a project is
configured not to send them"""
patch = create_patch() # don't use self.project
- oldstate = patch.state
- state = State.objects.exclude(pk=oldstate.pk)[0]
+ state = create_state()
patch.state = state
patch.save()
@@ -119,8 +116,6 @@ class PatchNotificationModelTest(TestCase):
class PatchNotificationEmailTest(TestCase):
- fixtures = ['default_states']
-
def setUp(self):
self.project = create_project(send_notifications=True)
@@ -212,11 +207,14 @@ class PatchNotificationEmailTest(TestCase):
patch.save()
PatchChangeNotification(patch=patch, orig_state=patch.state).save()
+ state = create_state()
+
self.assertEqual(PatchChangeNotification.objects.count(), len(patches))
self._expire_notifications()
# update one notification, to bring it out of the notification delay
- patches[0].state = State.objects.exclude(pk=patches[0].state.pk)[0]
+
+ patches[0].state = state
patches[0].save()
# the updated notification should prevent the other from being sent
@@ -31,15 +31,15 @@ from patchwork.bin.parsemail import find_author
from patchwork.bin.parsemail import find_content
from patchwork.bin.parsemail import find_project_by_header
from patchwork.bin.parsemail import find_pull_request
-from patchwork.bin.parsemail import parse_mail
+from patchwork.bin.parsemail import parse_mail as _parse_mail
from patchwork.bin.parsemail import parse_series_marker
from patchwork.bin.parsemail import split_prefixes
from patchwork.models import Comment
-from patchwork.models import get_default_initial_patch_state
from patchwork.models import Patch
from patchwork.models import Person
from patchwork.models import State
from patchwork.tests.utils import create_project
+from patchwork.tests.utils import create_state
from patchwork.tests.utils import create_user
from patchwork.tests.utils import read_patch
from patchwork.tests.utils import SAMPLE_DIFF
@@ -74,9 +74,13 @@ def create_email(content, msgid=None, sender=None, listid=None):
return _create_email(msg, msgid, sender, listid)
+def parse_mail(*args, **kwargs):
+ create_state()
+ return _parse_mail(*args, **kwargs)
+
+
class PatchTest(TestCase):
- fixtures = ['default_states']
project = create_project()
def _find_content(self, mbox_filename):
@@ -319,7 +323,6 @@ class MultipleProjectPatchTest(TestCase):
"""Test that patches sent to multiple patchwork projects are
handled correctly."""
- fixtures = ['default_states']
orig_content = 'Test Comment'
patch_filename = '0001-add-line.patch'
msgid = '<1@example.com>'
@@ -499,7 +502,6 @@ class PatchParseTest(PatchTest):
class DelegateRequestTest(TestCase):
- fixtures = ['default_states']
patch_filename = '0001-add-line.patch'
msgid = '<1@example.com>'
invalid_delegate_email = "nobody"
@@ -541,17 +543,17 @@ class DelegateRequestTest(TestCase):
class InitialPatchStateTest(TestCase):
- fixtures = ['default_states']
patch_filename = '0001-add-line.patch'
msgid = '<1@example.com>'
invalid_state_name = "Nonexistent Test State"
def setUp(self):
+ self.default_state = create_state()
+ self.nondefault_state = create_state()
+
self.patch = read_patch(self.patch_filename)
self.user = create_user()
self.project = create_project()
- self.default_state = get_default_initial_patch_state()
- self.nondefault_state = State.objects.get(name="Accepted")
def _get_email(self):
email = create_email(
@@ -596,7 +598,7 @@ class InitialPatchStateTest(TestCase):
class ParseInitialTagsTest(PatchTest):
- fixtures = ['default_tags', 'default_states']
+ fixtures = ['default_tags']
patch_filename = '0001-add-line.patch'
orig_content = ('test comment\n\n' +
'Tested-by: Test User <test@example.com>\n' +
@@ -38,7 +38,6 @@ from patchwork.tests.utils import create_user
@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
class TestProjectAPI(APITestCase):
- fixtures = ['default_states']
@staticmethod
def api_url(item=None):
@@ -148,7 +147,6 @@ class TestProjectAPI(APITestCase):
@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
class TestPersonAPI(APITestCase):
- fixtures = ['default_states']
@staticmethod
def api_url(item=None):
@@ -204,7 +202,6 @@ class TestPersonAPI(APITestCase):
@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
class TestUserAPI(APITestCase):
- fixtures = ['default_states']
@staticmethod
def api_url(item=None):
@@ -247,7 +244,7 @@ class TestUserAPI(APITestCase):
@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
class TestPatchAPI(APITestCase):
- fixtures = ['default_states', 'default_tags']
+ fixtures = ['default_tags']
@staticmethod
def api_url(item=None):
@@ -395,7 +392,7 @@ class TestPatchAPI(APITestCase):
@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
class TestCheckAPI(APITestCase):
- fixtures = ['default_states', 'default_tags']
+ fixtures = ['default_tags']
def setUp(self):
super(TestCheckAPI, self).setUp()
@@ -30,7 +30,7 @@ from patchwork.tests.utils import create_patch
class ExtractTagsTest(TestCase):
- fixtures = ['default_tags', 'default_states']
+ fixtures = ['default_tags']
email = 'test@example.com'
name_email = 'test name <' + email + '>'
@@ -83,7 +83,7 @@ class ExtractTagsTest(TestCase):
class PatchTagsTest(TransactionTestCase):
- fixtures = ['default_tags', 'default_states']
+ fixtures = ['default_tags']
ACK = 1
REVIEW = 2
TEST = 3
@@ -24,12 +24,12 @@ from patchwork.models import Patch
from patchwork.models import State
from patchwork.tests.utils import create_patches
from patchwork.tests.utils import create_project
+from patchwork.tests.utils import create_state
from patchwork.tests.utils import create_maintainer
class MultipleUpdateTest(TestCase):
- fixtures = ['default_states']
properties_form_id = 'patchform-properties'
def setUp(self):
@@ -96,7 +96,7 @@ class MultipleUpdateTest(TestCase):
def test_state_change_valid(self):
states = [patch.state.pk for patch in self.patches]
- state = State.objects.exclude(pk__in=states)[0]
+ state = create_state()
self._test_state_change(state.pk)
@@ -146,8 +146,6 @@ class UserLoginRedirectTest(TestCase):
class UserProfileTest(_UserTestCase):
- fixtures = ['default_states']
-
def test_user_profile(self):
response = self.client.get(reverse('user-profile'))
self.assertContains(response, 'Your Profile')
@@ -32,8 +32,6 @@ from patchwork.tests.utils import create_patches
'setting)')
class XMLRPCTest(LiveServerTestCase):
- fixtures = ['default_states']
-
def setUp(self):
self.url = self.live_server_url + reverse('xmlrpc')
self.rpc = xmlrpc_client.Server(self.url)
@@ -31,6 +31,7 @@ from patchwork.models import CoverLetter
from patchwork.models import Patch
from patchwork.models import Person
from patchwork.models import Project
+from patchwork.models import State
SAMPLE_DIFF = """--- /dev/null 2011-01-01 00:00:00.000000000 +0800
+++ a 2011-01-01 00:00:00.000000000 +0800
@@ -129,6 +130,23 @@ def create_maintainer(project=None, **kwargs):
return user
+def create_state(**kwargs):
+ """Create 'State' object."""
+ num = State.objects.count()
+
+ values = {
+ 'name': 'state_%d' % num,
+ 'ordering': num,
+ 'action_required': True,
+ }
+ values.update(kwargs)
+
+ state = State(**values)
+ state.save()
+
+ return state
+
+
def create_bundle(**kwargs):
"""Create 'Bundle' object."""
num = Bundle.objects.count()
@@ -155,6 +173,7 @@ def create_patch(**kwargs):
'delegate': None,
'project': create_project(),
'msgid': make_msgid(),
+ 'state': create_state(),
'name': 'testpatch%d' % num,
'headers': '',
'content': '',
@@ -256,7 +275,10 @@ def create_patches(count=1, **kwargs):
count (int): Number of patches to create
kwargs (dict): Overrides for various patch fields
"""
- return _create_submissions(create_patch, count, **kwargs)
+ values = {'state': create_state()}
+ values.update(kwargs)
+
+ return _create_submissions(create_patch, count, **values)
def create_covers(count=1, **kwargs):