def test_tdf134059(self): calc_doc = self.ui_test.load_file( get_url_for_data_file("tdf134059.ods")) xCalcDoc = self.xUITest.getTopFocusWindow() gridwin = xCalcDoc.getChild("grid_window") document = self.ui_test.get_component() self.assertSeriesNames(gridwin) # Hide row 10 gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "A10"})) self.ui_test._xUITest.executeCommand(".uno:HideRow") row = get_row(calc_doc, 9) self.assertFalse(row.getPropertyValue("IsVisible")) # Without the fix in place, this test would have failed with # AssertionError: 'Col. 1' != 'Column C' self.assertSeriesNames(gridwin) self.xUITest.executeCommand(".uno:Undo") self.assertTrue(row.getPropertyValue("IsVisible")) self.assertSeriesNames(gridwin) self.ui_test.close_doc()
def test_tdf36383_row_height(self): self.ui_test.create_doc_in_start_center("calc") document = self.ui_test.get_component() calcDoc = self.xUITest.getTopFocusWindow() gridwin = calcDoc.getChild("grid_window") document = self.ui_test.get_component() enter_text_to_cell(gridwin, "A1", "A") enter_text_to_cell(gridwin, "A2", "1") enter_text_to_cell(gridwin, "A3", "2") enter_text_to_cell(gridwin, "A4", "3") gridwin.executeAction("SELECT", mkPropertyValues({"RANGE": "A1:A4"})) self.xUITest.executeCommand(".uno:DataFilterAutoFilter") gridwin.executeAction( "LAUNCH", mkPropertyValues({ "AUTOFILTER": "", "COL": "0", "ROW": "0" })) xFloatWindow = self.xUITest.getFloatWindow() xCheckListMenu = xFloatWindow.getChild("check_list_menu") xList = xCheckListMenu.getChild("check_list_box") xEntry = xList.getChild("1") xEntry.executeAction("CLICK", tuple()) xOkButton = xFloatWindow.getChild("ok") xOkButton.executeAction("CLICK", tuple()) row = get_row(document, 2) self.assertFalse(row.getPropertyValue("IsVisible")) #row height self.ui_test.execute_dialog_through_command(".uno:RowHeight") xDialog = self.xUITest.getTopFocusWindow() xvalue = xDialog.getChild("value") xvalue.executeAction("TYPE", mkPropertyValues({"KEYCODE": "CTRL+A"})) xvalue.executeAction("TYPE", mkPropertyValues({"KEYCODE": "BACKSPACE"})) xvalue.executeAction("TYPE", mkPropertyValues({"TEXT": "1 cm"})) xOk = xDialog.getChild("ok") self.ui_test.close_dialog_through_button(xOk) self.assertFalse(row.getPropertyValue("IsVisible")) #optimal row height self.ui_test.execute_dialog_through_command(".uno:SetOptimalRowHeight") xDialog = self.xUITest.getTopFocusWindow() xOk = xDialog.getChild("ok") self.ui_test.close_dialog_through_button(xOk) self.assertFalse(row.getPropertyValue("IsVisible")) self.ui_test.close_doc()
def is_row_hidden(doc, index): row = get_row(doc, index) val = row.getPropertyValue("IsVisible") return not val
def check_row_hidden(self, document, results=[True] * 14): for i, value in enumerate(results, start=1): row = get_row(document, i) bVisible = row.getPropertyValue("IsVisible") self.assertEqual(bVisible, value)
def test_tdf141559_clear_filter(self): self.ui_test.create_doc_in_start_center("calc") document = self.ui_test.get_component() calcDoc = self.xUITest.getTopFocusWindow() gridwin = calcDoc.getChild("grid_window") document = self.ui_test.get_component() enter_text_to_cell(gridwin, "A1", "A") enter_text_to_cell(gridwin, "A2", "1") enter_text_to_cell(gridwin, "A3", "2") enter_text_to_cell(gridwin, "A4", "3") gridwin.executeAction("SELECT", mkPropertyValues({"RANGE": "A1:A4"})) self.xUITest.executeCommand(".uno:DataFilterAutoFilter") gridwin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": "", "COL": "0", "ROW": "0"})) xFloatWindow = self.xUITest.getFloatWindow() #Choose Standard Filter... button xMenu = xFloatWindow.getChild("menu") # check last item: 'Standard Filter...' (new menu item 'Clear Filter' is optional) nLastIdx = int(get_state_as_dict(xMenu)['Children']) - 1 self.assertEqual(10, nLastIdx) self.assertEqual('Standard Filter...', get_state_as_dict(xMenu.getChild(str(nLastIdx)))['Text']) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) self.assertEqual("Standard Filter...", get_state_as_dict(xMenu)['SelectEntryText']) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"RETURN"})) xDialog = self.xUITest.getTopFocusWindow() xfield1 = xDialog.getChild("field1") xcond1 = xDialog.getChild("cond1") xval1 = xDialog.getChild("val1") select_by_text(xfield1, "A") select_by_text(xcond1, ">") xval1.executeAction("TYPE", mkPropertyValues({"TEXT":"1"})) xOKBtn = xDialog.getChild("ok") self.ui_test.close_dialog_through_button(xOKBtn) row = get_row(document, 1) self.assertFalse(row.getPropertyValue("IsVisible")) gridwin.executeAction("LAUNCH", mkPropertyValues({"AUTOFILTER": "", "COL": "0", "ROW": "0"})) xFloatWindow = self.xUITest.getFloatWindow() #Choose Clear Filter button xMenu = xFloatWindow.getChild("menu") # check last item: 'Clear Filter' nLastIdx = int(get_state_as_dict(xMenu)['Children']) - 1 self.assertEqual(11, nLastIdx) self.assertEqual('Clear Filter', get_state_as_dict(xMenu.getChild(str(nLastIdx)))['Text']) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"DOWN"})) # Use new menu item "Clear Filter" to remove the standard filter condition self.assertEqual("Clear Filter", get_state_as_dict(xMenu)['SelectEntryText']) xMenu.executeAction("TYPE", mkPropertyValues({"KEYCODE":"RETURN"})) self.assertTrue(row.getPropertyValue("IsVisible")) self.ui_test.close_doc()