Unit tests for officehelper.py
Depend upon previous patch d8978a8c4f
for
officehelper.py which fixed some glitches.
Change-Id: Icc5c717d7f0f5a0a08202b6b57e475e7afe6f5c9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164195
Reviewed-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
Tested-by: Hossein <hossein@libreoffice.org>
This commit is contained in:
parent
124252aa0b
commit
28a43d53b2
2 changed files with 63 additions and 0 deletions
13
pyuno/PythonTest_pyuno_pytests_testofficehelper.mk
Normal file
13
pyuno/PythonTest_pyuno_pytests_testofficehelper.mk
Normal file
|
@ -0,0 +1,13 @@
|
|||
# -*- 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_PythonTest_PythonTest,pyuno_pytests_testofficehelper))
|
||||
$(eval $(call gb_PythonTest_add_modules,pyuno_pytests_testofficehelper,$(SRCDIR)/pyuno/qa/pytests,\
|
||||
testofficehelper \
|
||||
))
|
||||
# vim: set noet sw=4 ts=4:
|
50
pyuno/qa/pytests/testofficehelper.py
Normal file
50
pyuno/qa/pytests/testofficehelper.py
Normal file
|
@ -0,0 +1,50 @@
|
|||
import unittest
|
||||
from officehelper import bootstrap, BootstrapException
|
||||
|
||||
|
||||
class OfficeHelperTest(unittest.TestCase):
|
||||
"""officehelper.py must provide:
|
||||
Support of Windows, Mac OS X & GNU/Linux distributions
|
||||
Customizable connection with 'delays' **kwarg
|
||||
Reporting to console with 'report' **kwarg
|
||||
Memory cleanup from soffice service
|
||||
extra features may be:
|
||||
Python source documentation
|
||||
"""
|
||||
def test_default_config(self):
|
||||
# Check default timeout and number of attempts
|
||||
# Stop LibreOffice running service
|
||||
ctx = bootstrap() # Default settings suffice to initialize the service
|
||||
#time.sleep(10) # gve
|
||||
if ctx: # stop soffice as a service
|
||||
smgr = ctx.getServiceManager()
|
||||
desktop = smgr.createInstanceWithContext("com.sun.star.frame.Desktop", ctx)
|
||||
desktop.terminate()
|
||||
self.assertTrue(ctx) # check for failure
|
||||
|
||||
def test_kwargs(self):
|
||||
# Wait differently for LO to start, request context 10 times
|
||||
# Report processing in console
|
||||
ctx = bootstrap(delays=[1,]*10, report=print)
|
||||
if ctx: # stop soffice as a service
|
||||
smgr = ctx.getServiceManager()
|
||||
desktop = smgr.createInstanceWithContext("com.sun.star.frame.Desktop", ctx)
|
||||
desktop.terminate()
|
||||
self.assertTrue(ctx)
|
||||
|
||||
def test_exception(self):
|
||||
# Raise BootstrapException and stop ALL PRESENT LibreOffice running services
|
||||
with self.assertRaises(BootstrapException):
|
||||
bootstrap(delays=[0,], report=print) # delays=[0,] must raise BootstrapException
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
unittest.main()
|
||||
|
||||
# ~ dir(__name__)
|
||||
# ~ help(__name__)
|
||||
# ~ help(bootstrap)
|
||||
# ~ exit()
|
||||
|
||||
# vim: set shiftwidth=4 softtabstop=4 expandtab
|
Loading…
Reference in a new issue