mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
305b133c59
Summary: Biggest change is turning everything to unicode Test Plan: The tests Reviewers: dsagal, paulfitz Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2875
44 lines
1.7 KiB
Python
44 lines
1.7 KiB
Python
import doctest
|
|
import os
|
|
import re
|
|
|
|
import six
|
|
|
|
import functions
|
|
import moment
|
|
|
|
_old_date_get_global_tz = None
|
|
|
|
def date_setUp(doc_test):
|
|
# pylint: disable=unused-argument
|
|
global _old_date_get_global_tz # pylint: disable=global-statement
|
|
_old_date_get_global_tz = functions.date._get_global_tz
|
|
functions.date._get_global_tz = lambda: moment.tzinfo('America/New_York')
|
|
|
|
def date_tearDown(doc_test):
|
|
# pylint: disable=unused-argument
|
|
functions.date._get_global_tz = _old_date_get_global_tz
|
|
|
|
class Py23DocChecker(doctest.OutputChecker):
|
|
def check_output(self, want, got, optionflags):
|
|
if six.PY3:
|
|
want = re.sub(r"^u'(.*?)'$", r"'\1'", want)
|
|
want = re.sub(r'^u"(.*?)"$', r'"\1"', want)
|
|
return doctest.OutputChecker.check_output(self, want, got, optionflags)
|
|
|
|
# This works with the unittest module to turn all the doctests in the functions' doc-comments into
|
|
# unittest test cases.
|
|
def load_tests(loader, tests, ignore):
|
|
# Set DOC_URL for SELF_HYPERLINK()
|
|
os.environ['DOC_URL'] = 'https://docs.getgrist.com/sbaltsirg/Example'
|
|
tests.addTests(doctest.DocTestSuite(functions.date, setUp = date_setUp, tearDown = date_tearDown))
|
|
tests.addTests(doctest.DocTestSuite(functions.info, setUp = date_setUp, tearDown = date_tearDown))
|
|
tests.addTests(doctest.DocTestSuite(functions.logical))
|
|
tests.addTests(doctest.DocTestSuite(functions.math))
|
|
tests.addTests(doctest.DocTestSuite(functions.stats))
|
|
tests.addTests(doctest.DocTestSuite(functions.text, checker=Py23DocChecker()))
|
|
tests.addTests(doctest.DocTestSuite(functions.schedule,
|
|
setUp = date_setUp, tearDown = date_tearDown))
|
|
tests.addTests(doctest.DocTestSuite(functions.lookup, checker=Py23DocChecker()))
|
|
return tests
|