@@ -250,6 +250,18 @@ def test_data_gone(self):
250250 )
251251 self .assertIn ("Please reload the page and retry." , response .json ()["content" ])
252252
253+ def test_sql_page (self ):
254+ response = self .client .get ("/execute_sql/" )
255+ self .assertEqual (len (response .toolbar .get_panel_by_id ("SQLPanel" ).get_stats ()["queries" ]), 1 )
256+
257+ def test_async_sql_page (self ):
258+ response = self .client .get ("/async_execute_sql/" )
259+ self .assertEqual (len (response .toolbar .get_panel_by_id ("SQLPanel" ).get_stats ()["queries" ]), 1 )
260+
261+ def test_concurrent_async_sql_page (self ):
262+ response = self .client .get ("/async_execute_sql_concurrently/" )
263+ self .assertEqual (len (response .toolbar .get_panel_by_id ("SQLPanel" ).get_stats ()["queries" ]), 2 )
264+
253265
254266@override_settings (DEBUG = True )
255267class DebugToolbarIntegrationTestCase (IntegrationTestCase ):
@@ -843,3 +855,30 @@ def test_theme_toggle(self):
843855 self .get ("/regular/basic/" )
844856 toolbar = self .selenium .find_element (By .ID , "djDebug" )
845857 self .assertEqual (toolbar .get_attribute ("data-theme" ), "light" )
858+
859+ def test_async_sql_action (self ):
860+ self .get ("/async_execute_sql/" )
861+ sql_panel = self .selenium .find_element (By .ID , "SQLPanel" )
862+ debug_window = self .selenium .find_element (By .ID , "djDebugWindow" )
863+
864+ # Click to show the SQL panel
865+ self .selenium .find_element (By .CLASS_NAME , "SQLPanel" ).click ()
866+
867+ # SQL panel loads
868+ button = self .wait .until (
869+ EC .visibility_of_element_located ((By .CSS_SELECTOR , ".remoteCall" ))
870+ )
871+
872+
873+ def test_concurrent_async_sql_action (self ):
874+ self .get ("/async_execute_sql_concurrently/" )
875+ sql_panel = self .selenium .find_element (By .ID , "SQLPanel" )
876+ debug_window = self .selenium .find_element (By .ID , "djDebugWindow" )
877+
878+ # Click to show the SQL panel
879+ self .selenium .find_element (By .CLASS_NAME , "SQLPanel" ).click ()
880+
881+ # SQL panel loads
882+ button = self .wait .until (
883+ EC .visibility_of_element_located ((By .CSS_SELECTOR , ".remoteCall" ))
884+ )
0 commit comments