def test_multibyte_parameters(make_app, apidoc): outdir = apidoc.outdir assert (outdir / 'conf.py').isfile() assert (outdir / 'autodoc_fodder.rst').isfile() assert (outdir / 'index.rst').isfile() conf_py = (outdir / 'conf.py').text() conf_py_ = remove_unicode_literals(conf_py) assert u"project = 'プロジェクト名'" in conf_py_ assert u"author = '著者名'" in conf_py_ assert u"version = 'バージョン'" in conf_py_ assert u"release = 'リリース'" in conf_py_ app = make_app('text', srcdir=outdir) app.build() print(app._status.getvalue()) print(app._warning.getvalue())
import pytest from sphinx.writers.texinfo import TexinfoTranslator from sphinx.testing.util import remove_unicode_literals, strip_escseq from test_build_html import ENV_WARNINGS TEXINFO_WARNINGS = ENV_WARNINGS + """\ %(root)s/index.rst:\\d+: WARNING: unknown option: &option %(root)s/index.rst:\\d+: WARNING: citation not found: missing %(root)s/index.rst:\\d+: WARNING: no matching candidate for image URI u'foo.\\*' %(root)s/index.rst:\\d+: WARNING: no matching candidate for image URI u'svgimg.\\*' """ if PY3: TEXINFO_WARNINGS = remove_unicode_literals(TEXINFO_WARNINGS) @pytest.mark.sphinx('texinfo', testroot='warnings', freshenv=True) def test_texinfo_warnings(app, status, warning): app.builder.build_all() warnings = strip_escseq( re.sub(re.escape(os.sep) + '{1,2}', '/', warning.getvalue())) warnings_exp = TEXINFO_WARNINGS % { 'root': re.escape(app.srcdir.replace(os.sep, '/')) } assert re.match(warnings_exp + '$', warnings), \ 'Warnings don\'t match:\n' + \ '--- Expected (regex):\n' + warnings_exp + \ '--- Got:\n' + warnings
DOCCLASSES = ['howto', 'manual'] STYLEFILES = [ 'article.cls', 'fancyhdr.sty', 'titlesec.sty', 'amsmath.sty', 'framed.sty', 'color.sty', 'fancyvrb.sty', 'fncychap.sty', 'geometry.sty', 'kvoptions.sty', 'hyperref.sty' ] LATEX_WARNINGS = ENV_WARNINGS + """\ %(root)s/index.rst:\\d+: WARNING: unknown option: &option %(root)s/index.rst:\\d+: WARNING: citation not found: missing %(root)s/index.rst:\\d+: WARNING: no matching candidate for image URI u'foo.\\*' %(root)s/index.rst:\\d+: WARNING: Could not lex literal_block as "c". Highlighting skipped. """ if PY3: LATEX_WARNINGS = remove_unicode_literals(LATEX_WARNINGS) # only run latex if all needed packages are there def kpsetest(*filenames): try: p = Popen(['kpsewhich'] + list(filenames), stdout=PIPE) except OSError: # no kpsewhich... either no tex distribution is installed or it is # a "strange" one -- don't bother running latex return False else: p.communicate() if p.returncode != 0: # not found return False
from six import PY3 from test_build_html import ENV_WARNINGS from sphinx.testing.util import remove_unicode_literals, strip_escseq from sphinx.writers.texinfo import TexinfoTranslator TEXINFO_WARNINGS = ENV_WARNINGS + """\ %(root)s/index.rst:\\d+: WARNING: unknown option: &option %(root)s/index.rst:\\d+: WARNING: citation not found: missing %(root)s/index.rst:\\d+: WARNING: no matching candidate for image URI u'foo.\\*' %(root)s/index.rst:\\d+: WARNING: no matching candidate for image URI u'svgimg.\\*' """ if PY3: TEXINFO_WARNINGS = remove_unicode_literals(TEXINFO_WARNINGS) @pytest.mark.sphinx('texinfo', testroot='warnings', freshenv=True) def test_texinfo_warnings(app, status, warning): app.builder.build_all() warnings = strip_escseq(re.sub(re.escape(os.sep) + '{1,2}', '/', warning.getvalue())) warnings_exp = TEXINFO_WARNINGS % { 'root': re.escape(app.srcdir.replace(os.sep, '/'))} assert re.match(warnings_exp + '$', warnings), \ 'Warnings don\'t match:\n' + \ '--- Expected (regex):\n' + warnings_exp + \ '--- Got:\n' + warnings @pytest.mark.sphinx('texinfo')
LATEX_ENGINES = ['pdflatex', 'lualatex', 'xelatex'] DOCCLASSES = ['howto', 'manual'] STYLEFILES = ['article.cls', 'fancyhdr.sty', 'titlesec.sty', 'amsmath.sty', 'framed.sty', 'color.sty', 'fancyvrb.sty', 'fncychap.sty', 'geometry.sty', 'kvoptions.sty', 'hyperref.sty'] LATEX_WARNINGS = ENV_WARNINGS + """\ %(root)s/index.rst:\\d+: WARNING: unknown option: &option %(root)s/index.rst:\\d+: WARNING: citation not found: missing %(root)s/index.rst:\\d+: WARNING: no matching candidate for image URI u'foo.\\*' %(root)s/index.rst:\\d+: WARNING: Could not lex literal_block as "c". Highlighting skipped. """ if PY3: LATEX_WARNINGS = remove_unicode_literals(LATEX_WARNINGS) # only run latex if all needed packages are there def kpsetest(*filenames): try: p = Popen(['kpsewhich'] + list(filenames), stdout=PIPE) except OSError: # no kpsewhich... either no tex distribution is installed or it is # a "strange" one -- don't bother running latex return False else: p.communicate() if p.returncode != 0: # not found return False