add test for tdf#86214

We should extend the test and check for all invalid names. At the same
time this can be used as indirect documentation of the names that are
not allowed.

Change-Id: I9c8b760d49ce2bfe40158a9096246a75f727ff9d
This commit is contained in:
Markus Mohrhard 2017-03-18 01:58:05 +01:00
parent 58323be71c
commit 224a8b3856
3 changed files with 69 additions and 0 deletions

View file

@ -139,6 +139,7 @@ $(eval $(call gb_Module_add_screenshot_targets,sc,\
$(eval $(call gb_Module_add_uicheck_targets,sc,\
UITest_conditional_format \
UITest_range_name \
))
# vim: set noet sw=4 ts=4:

15
sc/UITest_range_name.mk Normal file
View file

@ -0,0 +1,15 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
$(eval $(call gb_UITest_UITest,range_name))
$(eval $(call gb_UITest_add_modules,range_name,$(SRCDIR)/sc/qa/uitest,\
range_name/ \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,53 @@
# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
from libreoffice.uno.propertyvalue import mkPropertyValues
from uitest.framework import UITestCase
from uitest.uihelper.common import type_text, get_state_as_dict
from uitest.uihelper.keyboard import select_all
class InvalidNames(UITestCase):
def test_invalid_names(self):
self.ui_test.create_doc_in_start_center("calc")
self.ui_test.execute_modeless_dialog_through_command(".uno:AddName")
xAddNameDlg = self.xUITest.getTopFocusWindow()
invalid_names = ["A1", "12", "1.2", "A1:B2" ]
xLabel = xAddNameDlg.getChild("label")
xAddBtn = xAddNameDlg.getChild("add")
xEdit = xAddNameDlg.getChild("edit")
success_text = get_state_as_dict(xLabel)["Text"]
for name in invalid_names:
with self.subTest(name = name):
select_all(xEdit)
type_text(xEdit, name)
new_text = get_state_as_dict(xLabel)["Text"]
self.assertNotEqual(success_text, new_text)
self.assertEqual(get_state_as_dict(xAddBtn)["Enabled"], "false")
select_all(xEdit)
type_text(xEdit, "valid_name")
new_text = get_state_as_dict(xLabel)["Text"]
self.assertEqual(success_text, new_text)
self.assertEqual(get_state_as_dict(xAddBtn)["Enabled"], "true")
self.ui_test.close_dialog_through_button(xAddBtn)
self.ui_test.close_doc()
# vim: set shiftwidth=4 softtabstop=4 expandtab: