3535    override_settings ,
3636    skipUnlessDBFeature ,
3737)
38+ from  django .test .selenium  import  screenshot_cases 
3839from  django .test .utils  import  override_script_prefix 
3940from  django .urls  import  NoReverseMatch , resolve , reverse 
4041from  django .utils  import  formats , translation 
@@ -5732,6 +5733,7 @@ def setUp(self):
57325733            title = "A Long Title" , published = True , slug = "a-long-title" 
57335734        )
57345735
5736+     @screenshot_cases (["desktop_size" , "mobile_size" , "rtl" , "dark" ]) 
57355737    def  test_login_button_centered (self ):
57365738        from  selenium .webdriver .common .by  import  By 
57375739
@@ -5743,6 +5745,7 @@ def test_login_button_centered(self):
57435745        ) -  (offset_left  +  button .get_property ("offsetWidth" ))
57445746        # Use assertAlmostEqual to avoid pixel rounding errors. 
57455747        self .assertAlmostEqual (offset_left , offset_right , delta = 3 )
5748+         self .take_screenshot ("login" )
57465749
57475750    def  test_prepopulated_fields (self ):
57485751        """ 
@@ -6017,6 +6020,7 @@ def test_populate_existing_object(self):
60176020        self .assertEqual (slug1 , "this-is-the-main-name-the-best-2012-02-18" )
60186021        self .assertEqual (slug2 , "option-two-this-is-the-main-name-the-best" )
60196022
6023+     @screenshot_cases (["desktop_size" , "mobile_size" , "dark" ]) 
60206024    def  test_collapsible_fieldset (self ):
60216025        """ 
60226026        The 'collapse' class in fieldsets definition allows to 
@@ -6031,12 +6035,15 @@ def test_collapsible_fieldset(self):
60316035            self .live_server_url  +  reverse ("admin:admin_views_article_add" )
60326036        )
60336037        self .assertFalse (self .selenium .find_element (By .ID , "id_title" ).is_displayed ())
6038+         self .take_screenshot ("collapsed" )
60346039        self .selenium .find_elements (By .LINK_TEXT , "Show" )[0 ].click ()
60356040        self .assertTrue (self .selenium .find_element (By .ID , "id_title" ).is_displayed ())
60366041        self .assertEqual (
60376042            self .selenium .find_element (By .ID , "fieldsetcollapser0" ).text , "Hide" 
60386043        )
6044+         self .take_screenshot ("expanded" )
60396045
6046+     @screenshot_cases (["desktop_size" , "mobile_size" , "rtl" , "dark" ]) 
60406047    def  test_selectbox_height_collapsible_fieldset (self ):
60416048        from  selenium .webdriver .common .by  import  By 
60426049
@@ -6047,7 +6054,7 @@ def test_selectbox_height_collapsible_fieldset(self):
60476054        )
60486055        url  =  self .live_server_url  +  reverse ("admin7:admin_views_pizza_add" )
60496056        self .selenium .get (url )
6050-         self .selenium .find_elements (By .LINK_TEXT , "Show " )[0 ].click ()
6057+         self .selenium .find_elements (By .ID , "fieldsetcollapser0 " )[0 ].click ()
60516058        from_filter_box  =  self .selenium .find_element (By .ID , "id_toppings_filter" )
60526059        from_box  =  self .selenium .find_element (By .ID , "id_toppings_from" )
60536060        to_filter_box  =  self .selenium .find_element (By .ID , "id_toppings_filter_selected" )
@@ -6062,7 +6069,9 @@ def test_selectbox_height_collapsible_fieldset(self):
60626069                +  from_box .get_property ("offsetHeight" )
60636070            ),
60646071        )
6072+         self .take_screenshot ("selectbox-collapsible" )
60656073
6074+     @screenshot_cases (["desktop_size" , "mobile_size" , "rtl" , "dark" ]) 
60666075    def  test_selectbox_height_not_collapsible_fieldset (self ):
60676076        from  selenium .webdriver .common .by  import  By 
60686077
@@ -6091,7 +6100,9 @@ def test_selectbox_height_not_collapsible_fieldset(self):
60916100                +  from_box .get_property ("offsetHeight" )
60926101            ),
60936102        )
6103+         self .take_screenshot ("selectbox-non-collapsible" )
60946104
6105+     @screenshot_cases (["desktop_size" , "mobile_size" , "rtl" , "dark" ]) 
60956106    def  test_first_field_focus (self ):
60966107        """JavaScript-assisted auto-focus on first usable form field.""" 
60976108        from  selenium .webdriver .common .by  import  By 
@@ -6108,6 +6119,7 @@ def test_first_field_focus(self):
61086119            self .selenium .switch_to .active_element ,
61096120            self .selenium .find_element (By .ID , "id_name" ),
61106121        )
6122+         self .take_screenshot ("focus-single-widget" )
61116123
61126124        # First form field has a MultiWidget 
61136125        with  self .wait_page_loaded ():
@@ -6118,6 +6130,7 @@ def test_first_field_focus(self):
61186130            self .selenium .switch_to .active_element ,
61196131            self .selenium .find_element (By .ID , "id_start_date_0" ),
61206132        )
6133+         self .take_screenshot ("focus-multi-widget" )
61216134
61226135    def  test_cancel_delete_confirmation (self ):
61236136        "Cancelling the deletion of an object takes the user back one page." 
0 commit comments