@@ -208,6 +208,13 @@ protected String getProjectName()
208208 return PROJECT_VERIFY ;
209209 }
210210
211+ @ Override
212+ protected void doCleanup (boolean afterTest )
213+ {
214+ _containerHelper .deleteProject (PROJECT_VERIFY , afterTest );
215+ _containerHelper .deleteProject (PROJECT_OTHER , afterTest );
216+ }
217+
211218 @ BeforeClass
212219 public static void setupProject ()
213220 {
@@ -1629,7 +1636,7 @@ public void testAutoIncrementKeyEncoded()
16291636 // setup a list with an auto-increment key that we need to make sure is encoded in the form input
16301637 String encodedListName = "autoIncrementEncodeList" ;
16311638 String keyName = "'><script>alert(\" :(\" )</script>'" ;
1632- String encodedKeyFieldName = EscapeUtil .getFormFieldName (keyName ). replaceAll ( " \" " , """ ) ;
1639+ String encodedKeyFieldName = EscapeUtil .getFormFieldName (keyName );
16331640 _listHelper .createList (PROJECT_VERIFY , encodedListName , keyName , col ("Name" , ColumnType .String ));
16341641 _listHelper .goToList (encodedListName );
16351642
@@ -1639,10 +1646,9 @@ public void testAutoIncrementKeyEncoded()
16391646 customizeView .addColumn (EscapeUtil .fieldKeyEncodePart (keyName ));
16401647 customizeView .applyCustomView ();
16411648
1642- // insert a new row and verify the key is encoded in the form input
1649+ // insert a new row and verify the key field is not present
16431650 table .clickInsertNewRow ();
1644- String html = getHtmlSource ();
1645- checker ().verifyFalse ("List key hidden input not present." , html .contains (encodedKeyFieldName ));
1651+ checker ().withScreenshot ().verifyEquals ("List fields on insert form." , List .of ("quf_Name" ), getQueryFormFieldNames ());
16461652 String nameValue = "test" ;
16471653 setFormElement (Locator .name (EscapeUtil .getFormFieldName ("Name" )), nameValue );
16481654 clickButton ("Submit" );
@@ -1654,8 +1660,7 @@ public void testAutoIncrementKeyEncoded()
16541660
16551661 // verify name value can be updated
16561662 table .clickEditRow (0 );
1657- html = getHtmlSource ();
1658- checker ().verifyTrue ("List key hidden input not present." , html .contains (encodedKeyFieldName ));
1663+ checker ().withScreenshot ().verifyEquals ("List fields on update form." , List .of ("quf_Name" , encodedKeyFieldName ), getQueryFormFieldNames ());
16591664 nameValue = "test updated" ;
16601665 setFormElement (Locator .name (EscapeUtil .getFormFieldName ("Name" )), nameValue );
16611666 clickButton ("Submit" );
@@ -1668,6 +1673,14 @@ public void testAutoIncrementKeyEncoded()
16681673 _listHelper .deleteList ();
16691674 }
16701675
1676+ private List <String > getQueryFormFieldNames ()
1677+ {
1678+ return Locator .tag ("input" ).attributeStartsWith ("name" , "quf_" )
1679+ .findElements (getDriver ()).stream ()
1680+ .map (el -> el .getDomAttribute ("name" ))
1681+ .toList ();
1682+ }
1683+
16711684 private void viewRawTableMetadata (String listName )
16721685 {
16731686 goToSchemaBrowser ();
0 commit comments