This is an automated email from the ASF dual-hosted git repository.

mseidel pushed a commit to branch AOO42X
in repository https://gitbox.apache.org/repos/asf/openoffice.git


The following commit(s) were added to refs/heads/AOO42X by this push:
     new c767ce6af6 Restore test
c767ce6af6 is described below

commit c767ce6af6b4fa73d3fb3b62dd99c67f1a5a12b2
Author: mseidel <[email protected]>
AuthorDate: Tue Apr 1 16:53:23 2025 +0200

    Restore test
---
 .../source/fvt/gui/sw/table/TableGeneral.java      | 529 +++++++++++++++++++++
 1 file changed, 529 insertions(+)

diff --git a/test/testgui/source/fvt/gui/sw/table/TableGeneral.java 
b/test/testgui/source/fvt/gui/sw/table/TableGeneral.java
new file mode 100644
index 0000000000..86fdf79a47
--- /dev/null
+++ b/test/testgui/source/fvt/gui/sw/table/TableGeneral.java
@@ -0,0 +1,529 @@
+/**************************************************************
+ * 
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * 
+ *************************************************************/
+
+package fvt.gui.sw.table;
+
+import static org.junit.Assert.*;
+import static org.openoffice.test.vcl.Tester.*;
+import static testlib.gui.AppTool.*;
+import static testlib.gui.UIMap.*;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
+import org.openoffice.test.common.Logger;
+import org.openoffice.test.common.SystemUtil;
+
+import testlib.gui.AppTool;
+
+public class TableGeneral {
+       
+       @Rule
+       public Logger log = Logger.getLogger(this);
+
+       @Before
+       public void setUp() throws Exception {
+               // Start OpenOffice
+               app.start();
+
+               AppTool.newTextDocument();
+               // Insert a table
+               app.dispatch(".uno:InsertTable");
+       }
+
+       @After
+       public void tearDown() throws Exception {
+               app.stop();
+       }
+
+       /**
+        * Test setting table size in text document
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableSize() throws Exception {
+
+               swTableSizeColBox.focus();
+               typeKeys("<delete>");
+               typeKeys("3");
+               swTableSizeRowBox.focus();
+               typeKeys("<delete>");
+               typeKeys("4");
+               writerInsertTable.ok();
+
+               writer.focus();
+               // verify the rows in the table
+               assertNotNull(statusBar.getItemTextById(8));
+               for (int i = 0; i < 3; i++) {
+                       typeKeys("<down>");
+                       assertNotNull(statusBar.getItemTextById(8));
+               }
+               typeKeys("<down>");
+               sleep(1);
+               assertFalse(tableToolbar.exists());
+       }
+
+       /**
+        * Test setting table cell background in text document
+        * 
+        * @throws Exception
+        */
+       @Test
+       @Ignore("Bug #120378- the table cell fill color change when copy one 
table cell in word processor to presentation")
+       public void testTableBackground() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               writer.focus();
+               // set table cell background
+               app.dispatch(".uno:TableDialog");
+               swTableBackground.select();
+               assertTrue("Table background property dialog pop up",
+                               swTableBackground.exists());
+               swTableBackgroundColor.focus();
+               swTableBackgroundColor.click(50, 50);
+               swTableBackground.ok();
+               // verify table cell background color
+               writer.focus();
+               // select the cell which is filled with color
+               app.dispatch(".uno:EntireCell");
+
+               typeKeys("<ctrl c>");
+               AppTool.newPresentation();
+               typeKeys("<ctrl v>");
+               // enable table cell area format dialog
+               app.dispatch(".uno:FormatArea");
+               sleep(1);
+               assertEquals("Light red", sdTableBACGColorListbox.getSelText());
+               // close table cell area format dialog
+               sdTableBACGColorArea.cancel();
+       }
+
+       /**
+        * Test setting table border in text document
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableBorder() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               // set table border as none
+               writer.focus();
+               app.dispatch(".uno:TableDialog");
+               swTableBorder.select();
+               assertTrue("Table border property dialog pop up",
+                               swTableBorder.exists());
+               swTableBorderLineArrange.click(10, 10);
+               swTableBorder.ok();
+       }
+
+       /**
+        * Test setting table border line style,line color,spacing to content in
+        * text document
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableBorderLineStyle() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               writer.focus();
+               app.dispatch(".uno:TableDialog");
+               swTableBorder.select();
+               assertTrue("Table border property dialog pop up",
+                               swTableBorder.exists());
+               // set line style
+               swTableBorderLineStyle.select(8);
+               // set line color
+               final int nMagentaIndex = 16; // for AOO's colorpicker as of 
#i118828#
+               swTableBorderLineColor.select( nMagentaIndex);
+               // set spacing to content
+               swTableSTCLeft.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               // set spacing to content
+               typeKeys("0.5");
+               // set table shadow
+               swTableShadow.click(40, 10);
+               swTableShadowSize.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("2");
+               swTableShadowColor.select( nMagentaIndex);
+               swTableBorder.ok();
+               // verify the setting property of table
+               writer.focus();
+               app.dispatch(".uno:TableDialog");
+               swTableBorder.select();
+               assertEquals("2.60 pt", swTableBorderLineStyle.getItemText(8));
+               assertEquals("Magenta", swTableBorderLineColor.getItemText( 
nMagentaIndex));
+               assertEquals("0.50 \"", swTableSTCLeft.getText());
+               assertEquals("0.50 \"", swTableSTCRight.getText());
+               assertEquals("0.50 \"", swTableSTCTop.getText());
+               assertEquals("0.50 \"", swTableSTCBottom.getText());
+               assertEquals("1.97 \"", swTableShadowSize.getText());
+               assertEquals("Magenta", swTableShadowColor.getItemText( 
nMagentaIndex));
+               assertTrue("SWTableSTC_SYNC", swTableSTCSYNC.isChecked());
+               swTableBorder.close();
+
+               // uncheck Synchronize box and set spacing to content
+               writer.focus();
+               app.dispatch(".uno:TableDialog");
+               swTableBorder.select();
+               swTableSTCSYNC.uncheck();
+               // set left spacing to content
+               swTableSTCLeft.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("0.5");
+               // set right spacing to content
+               swTableSTCRight.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("0.8");
+               // set top spacing to content
+               swTableSTCTop.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("1.0");
+               // set bottom spacing to content
+               swTableSTCBottom.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("2");
+               swTableBorder.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+
+               writer.focus();
+               // verify the setting value of spacing to content for table
+               app.dispatch(".uno:TableDialog");
+               swTableBorder.select();
+               assertEquals("0.50 \"", swTableSTCLeft.getText());
+               assertEquals("0.80 \"", swTableSTCRight.getText());
+               assertEquals("1.00 \"", swTableSTCTop.getText());
+               assertEquals("1.97 \"", swTableSTCBottom.getText());
+               assertFalse("SWTableSTC_SYNC", swTableSTCSYNC.isChecked());
+               swTableBorder.close();
+       }
+
+       /**
+        * create table with auto format
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableAutoFormat() throws Exception {
+               // create table with auto format
+               button("sw:PushButton:DLG_INSERT_TABLE:BT_AUTOFORMAT").click();
+               assertTrue("Table auto format dialog pop up", 
swTableAutoFMT.exists());
+               swTableAutoFormatListbox.select(3);
+               swTableAutoFMT.ok();
+               // verify the auto format is that just selected
+               button("sw:PushButton:DLG_INSERT_TABLE:BT_AUTOFORMAT").click();
+               assertEquals("Blue", swTableAutoFormatListbox.getSelText());
+               swTableAutoFMT.close();
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+
+       }
+
+       /**
+        * set row height and select row,insert/delete row
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableRowHeight() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+
+               // set row height
+               writer.focus();
+               writer.openContextMenu();
+               swTableRowHeightMenu.select();
+               assertTrue(swTableSetRowHeightDialog.exists());
+               swTableSetRowHeight.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("0.5");
+               swTableSetRowHeightDialog.ok();
+
+               // verify row height
+               writer.focus();
+               writer.openContextMenu();
+               swTableRowHeightMenu.select();
+               assertTrue(swTableSetRowHeightDialog.exists());
+               assertEquals("0.50 \"", swTableSetRowHeight.getText());
+               swTableSetRowHeightDialog.close();
+       }
+
+       /**
+        * test select row
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableSelectRow() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               // select row
+               writer.focus();
+               writer.openContextMenu();
+               swTableSelectRowMenu.select();
+
+               // verify select one row successfully
+               typeKeys("<ctrl c>");
+               typeKeys("<down>");
+               typeKeys("<down>");
+               typeKeys("<enter>");
+               typeKeys("<ctrl v>");
+               typeKeys("<up>");
+               assertTrue(tableToolbar.exists());
+
+       }
+
+       /**
+        * insert row and verify how many row inserted
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableInsertRow() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               writer.focus();
+               writer.openContextMenu();
+               swTableInsertRowMenu.select();
+               assertTrue("SWTable_InsertRow Dialog pop up", 
swTableInsertRow.exists());
+               swTableInsertRowColumnSetNumber.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("3");
+               swTableInsertRow.ok();
+
+               writer.focus();
+               // verify how many rows in the table
+               assertNotNull(statusBar.getItemTextById(8));
+               for (int i = 0; i < 4; i++) {
+                       typeKeys("<down>");
+                       assertNotNull(statusBar.getItemTextById(8));
+               }
+               typeKeys("<down>");
+               sleep(1);
+               assertFalse(tableToolbar.exists());
+       }
+
+       /**
+        * delete row and verify row
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableRowDelete() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               // delete row
+               writer.focus();
+               writer.openContextMenu();
+               swTableRowDleteMenu.select();
+               // verify whether delete row
+               writer.focus();
+               assertNotNull(statusBar.getItemTextById(8));
+               typeKeys("<down>");
+               sleep(1);
+               assertFalse(tableToolbar.exists());
+
+       }
+
+       /**
+        * set column width and verify
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableColumnWidth() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               // set column width
+               writer.focus();
+               writer.openContextMenu();
+               swTableColumnWidthMenu.select();
+               swTableSetColumnWidth.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("2");
+               swTableSetColumnDialog.ok();
+               // verify column width
+               writer.focus();
+               writer.openContextMenu();
+               swTableColumnWidthMenu.select();
+               assertEquals("2.00 \"", swTableSetColumnWidth.getText());
+
+       }
+
+       /**
+        * select column and verify
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableColumnSelect() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               writer.focus();
+               writer.openContextMenu();
+               swTableColumnSelectMenu.select();
+
+               // verify select one column
+               typeKeys("<ctrl c>");
+               typeKeys("<down>");
+               typeKeys("<down>");
+               typeKeys("<enter>");
+               typeKeys("<ctrl v>");
+               typeKeys("<up>");
+               assertTrue(tableToolbar.exists());
+
+       }
+
+       /**
+        * insert column and verify
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableColumnInsert() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               // insert column
+               writer.focus();
+               writer.openContextMenu();
+               swTableColumnInsertMenu.select();
+               swTableInsertRowColumnSetNumber.focus();
+               typeKeys("<ctrl a>");
+               typeKeys("<delete>");
+               typeKeys("3");
+               swTableInsertColumn.ok();
+               // verify insert column successfully
+               writer.focus();
+               assertTrue(tableToolbar.exists());
+               for (int i = 0; i < 9; i++) {
+                       typeKeys("<right>");
+                       sleep(1);
+                       assertTrue(tableToolbar.exists());
+               }
+               typeKeys("<right>");
+               sleep(1);
+               assertFalse(tableToolbar.exists());
+       }
+
+       /**
+        * delete column and verify whether delete or not
+        * 
+        * @throws Exception
+        */
+       public void testTableColumnDelete() throws Exception {
+               writerInsertTable.ok();
+               assertNotNull(statusBar.getItemTextById(8));
+               // delete column
+               writer.focus();
+               writer.openContextMenu();
+               swTableColumnDeleteMenu.select();
+               // verify delete column
+               writer.focus();
+               assertTrue(tableToolbar.exists());
+               for (int i = 0; i < 7; i++) {
+                       typeKeys("<right>");
+                       assertTrue(tableToolbar.exists());
+               }
+               sleep(1);
+               assertFalse(tableToolbar.exists());
+       }
+
+       /**
+        * split cell
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testTableCellSplit() throws Exception {
+               writerInsertTable.ok();
+               assertTrue(tableToolbar.exists());
+               for (int k = 0; k < 2; k++) {
+                       writer.focus();
+                       writer.openContextMenu();
+                       swTableCellSplitMenu.select();
+                       swTableCellSplitNumber.focus();
+                       typeKeys("<ctrl a>");
+                       typeKeys("<delete>");
+                       typeKeys("2");
+                       if (k == 0) {
+                               // split table cell horizontally
+                               swTableCellSplitDialog.ok();
+                       } else {
+                               // split table cell
+                               swTableCellSplitVERTButton.check();
+                               // vertically
+                               swTableCellSplitDialog.ok();
+                       }
+               }
+               // verify cell split successfully
+               writer.focus();
+               assertTrue(tableToolbar.exists());
+               for (int i = 0; i < 7; i++) {
+                       typeKeys("<right>");
+                       assertTrue(tableToolbar.exists());
+               }
+               sleep(1);
+               assertFalse(tableToolbar.exists());
+       }
+
+       /**
+        * Test convert table to text in text document
+        * 
+        * @throws Exception
+        */
+       @Test
+       public void testConvertTableToText() throws Exception {
+               writerInsertTable.ok();
+               writer.focus();
+               typeKeys("1<right>2<right>3<right>4");
+               sleep(1);
+
+               // Convert table to text
+               app.dispatch(".uno:ConvertTableToText");
+               assertTrue("Convert Table to Text dialog pop up",
+                               writerConvertTableToTextDlg.exists());
+               // typeKeys("<enter>");
+               writerConvertTableToTextDlg.ok();
+
+               // Verify if text is converted successfully
+               app.dispatch(".uno:SelectAll");
+               app.dispatch(".uno:Copy");
+               if (SystemUtil.isWindows())
+                       assertEquals("Converted text", "1\t2\r\n3\t4\r\n",
+                                       app.getClipboard());
+               else
+                       assertEquals("Converted text", "1\t2\n3\t4\n", 
app.getClipboard());
+       }
+}

Reply via email to