10 |
10 |
from django.core.urlresolvers import reverse
|
11 |
11 |
from django.conf import settings
|
12 |
12 |
from django.contrib.auth.models import User, Group
|
|
13 |
from django.db import connection
|
13 |
14 |
from django.template import TemplateSyntaxError
|
14 |
15 |
from django.test import override_settings
|
|
16 |
from django.test.utils import CaptureQueriesContext
|
15 |
17 |
from django.utils.http import urlencode
|
16 |
18 |
from django.utils.six import BytesIO
|
17 |
19 |
from django.utils.six.moves.urllib import parse as urlparse
|
... | ... | |
21 |
23 |
from webtest import Upload
|
22 |
24 |
|
23 |
25 |
from combo.wsgi import application
|
24 |
|
from combo.data.models import Page, CellBase, TextCell, LinkCell, ConfigJsonCell, JsonCell, PageSnapshot, LinkListCell, ParentContentCell
|
|
26 |
from combo.data.models import Page, CellBase, TextCell, LinkCell, ConfigJsonCell, JsonCell, PageSnapshot, LinkListCell, ParentContentCell, MenuCell
|
25 |
27 |
from combo.apps.assets.models import Asset
|
26 |
28 |
from combo.apps.family.models import FamilyInfosCell
|
27 |
29 |
from combo.apps.search.models import SearchCell
|
... | ... | |
312 |
314 |
assert '<li class="nav-right"' not in resp.text
|
313 |
315 |
|
314 |
316 |
|
|
317 |
def test_edit_page_num_queries(app, admin_user):
|
|
318 |
page = Page.objects.create(title='One', slug='one', parent=None, template_name='standard')
|
|
319 |
page2 = Page.objects.create(title='Two', slug='two', parent=page, template_name='standard')
|
|
320 |
MenuCell.objects.create(page=page, order=0)
|
|
321 |
TextCell.objects.create(page=page, placeholder='content', text='Foobar', order=1)
|
|
322 |
LinkCell.objects.create(page=page, placeholder='content', link_page=page2, order=2)
|
|
323 |
JsonCell.objects.create(page=page, placeholder='content', order=3, url='http://example.com')
|
|
324 |
SearchCell.objects.create(page=page, _search_services={'data': ['_text']}, order=4)
|
|
325 |
cell = LinkListCell.objects.create(order=5, placeholder='content', page=page)
|
|
326 |
for i in range(5):
|
|
327 |
LinkCell.objects.create(
|
|
328 |
page=page,
|
|
329 |
placeholder=cell.link_placeholder,
|
|
330 |
title='Foo %s' % i,
|
|
331 |
url='http://example.net/',
|
|
332 |
link_page=page,
|
|
333 |
order=i+1,
|
|
334 |
)
|
|
335 |
|
|
336 |
app = login(app)
|
|
337 |
with CaptureQueriesContext(connection) as ctx:
|
|
338 |
app.get('/manage/pages/%s/' % page.pk)
|
|
339 |
assert len(ctx.captured_queries) == 89
|
|
340 |
|
|
341 |
|
315 |
342 |
def test_delete_page(app, admin_user):
|
316 |
343 |
Page.objects.all().delete()
|
317 |
344 |
page = Page(title='One', slug='one', template_name='standard')
|
318 |
|
-
|