31 lines
1.1 KiB
Python
31 lines
1.1 KiB
Python
from uuid import UUID
|
|
from bs4 import BeautifulSoup
|
|
from django.test import LiveServerTestCase, override_settings
|
|
|
|
|
|
@override_settings(DEBUG=True)
|
|
class DebugToolbarTestCase(LiveServerTestCase):
|
|
def test_rendering(self):
|
|
#
|
|
# Rendering toolbar
|
|
#
|
|
response = self.client.get('/')
|
|
self.assertEqual(response.status_code, 200)
|
|
soup = BeautifulSoup(response.content.decode('utf-8'), 'html.parser')
|
|
toolbar = soup.find(id='djDebug')
|
|
self.assertIsNotNone(toolbar)
|
|
store_id = toolbar.attrs['data-store-id']
|
|
# Checks that store_id is a valid UUID.
|
|
UUID(store_id)
|
|
render_panel_url = toolbar.attrs['data-render-panel-url']
|
|
panel_id = soup.find(title='Cachalot')['class'][0]
|
|
panel_url = ('%s?store_id=%s&panel_id=%s'
|
|
% (render_panel_url, store_id, panel_id))
|
|
|
|
#
|
|
# Rendering panel
|
|
#
|
|
panel_response = self.client.get(panel_url)
|
|
self.assertEqual(panel_response.status_code, 200)
|
|
# TODO: Check that the displayed data is correct.
|