from patchwork.tests.api import utils
from patchwork.tests.utils import create_cover
+from patchwork.tests.utils import create_covers
from patchwork.tests.utils import create_maintainer
+from patchwork.tests.utils import create_series
from patchwork.tests.utils import create_user
if settings.ENABLE_REST_API:
self.assertNotIn('mbox', resp.data[0])
self.assertNotIn('web_url', resp.data[0])
+ def test_list_bug_335(self):
+ """Ensure we retrieve the embedded series project once."""
+ series = create_series()
+ create_covers(5, series=series)
+
+ # FIXME(stephenfin): This should result in 2 queries
+ with self.assertNumQueries(3):
+ self.client.get(self.api_url())
+
@utils.store_samples('cover-detail')
def test_detail(self):
"""Validate we can get a specific cover letter."""
{'actor': 'foo-bar'})
self.assertEqual(len(events), len(resp.data))
+ def test_list_bug_335(self):
+ """Ensure we retrieve the embedded series project once."""
+ for _ in range(3):
+ self._create_events()
+
+ # FIXME(stephenfin): This should result in 28 queries
+ with self.assertNumQueries(32):
+ self.client.get(self.api_url())
+
def test_order_by_date_default(self):
"""Assert the default ordering is by date descending."""
self._create_events()
from patchwork.tests.api import utils
from patchwork.tests.utils import create_maintainer
from patchwork.tests.utils import create_patch
+from patchwork.tests.utils import create_patches
from patchwork.tests.utils import create_person
from patchwork.tests.utils import create_project
+from patchwork.tests.utils import create_series
from patchwork.tests.utils import create_state
from patchwork.tests.utils import create_user
self.assertIn('url', resp.data[0])
self.assertNotIn('web_url', resp.data[0])
+ def test_list_bug_335(self):
+ """Ensure we retrieve the embedded series project once."""
+ series = create_series()
+ create_patches(5, series=series)
+
+ # FIXME(stephenfin): This should result in 3 queries
+ with self.assertNumQueries(8):
+ self.client.get(self.api_url())
+
@utils.store_samples('patch-detail')
def test_detail(self):
"""Show a specific patch."""
self.assertNotIn('mbox', resp.data[0]['cover_letter'])
self.assertNotIn('web_url', resp.data[0]['patches'][0])
+ def test_list_bug_335(self):
+ """Ensure we retrieve the embedded cover letter project once."""
+ self._create_series()
+
+ # FIXME(stephenfin): This should result in 4 queries
+ with self.assertNumQueries(5):
+ self.client.get(self.api_url())
+
@utils.store_samples('series-detail')
def test_detail(self):
"""Show series."""