示例#1
0
def test_nested_table():

    latex = '\\begin{table}A\\begin{table}B\\end{table}C\\end{table}'
    toks = p.parse(latex)
    plain, pos = utils.get_txt_pos(toks)
    assert plain == '\n\n[Tabelle]\n\n'

    latex = '\\begin{table}A\\begin{tablx}B\\end{table}C\\end{table}'
    toks = p.parse(latex)
    plain, pos = utils.get_txt_pos(toks)
    assert plain == '\n\n[Tabelle]\n\nC\n\n'
示例#2
0
def test_1():
    parms = parameters.Parameters()
    parms.macro_defs_python.append(
        defs.Macro(parms, '\\xxx', args='*OA', repl='#3'))
    p = parser.Parser(parms)

    toks = p.parse(latex_1)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_1_1 == plain

    toks = p.parse(latex_1, extract=['\\xxx'])
    plain, pos = utils.get_txt_pos(toks)
    assert plain_1_2 == plain
示例#3
0
def test_1():
    # keep verbatim
    parms = parameters.Parameters()
    p = parser.Parser(parms)
    toks = p.parse(latex_1)
    plain, pos = utils.get_txt_pos(toks)
    assert plain == plain_1
示例#4
0
def test_comment():
    parms = parameters.Parameters()
    p = parser.Parser(parms)
    toks = p.parse(latex_comment)
    plain_comment, pos = utils.get_txt_pos(toks)

    assert plain_comment_should_be == plain_comment
示例#5
0
def test_10(capsys):
    capsys.readouterr()
    toks = p.parse(latex_10, source='t.tex')
    plain, pos = utils.get_txt_pos(toks)
    cap = capsys.readouterr()
    assert plain == plain_10
    assert cap.err == stderr_10
示例#6
0
def test_3():
    parms = parameters.Parameters()
    parms.item_default_label = ['*']
    p = parser.Parser(parms)
    toks = p.parse(latex_3)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_3 == plain
示例#7
0
def test_6():
    parms = parameters.Parameters()
    parms.no_specials()
    p = parser.Parser(parms)
    toks = p.parse(latex_6)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_6 == plain
示例#8
0
def test_10():
    parms = parameters.Parameters()
    parms.math_displayed_simple = True
    p = parser.Parser(parms)
    toks = p.parse(latex_10)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_10 == plain
示例#9
0
def test_macro_in_arg():
    parms = parameters.Parameters()
    parms.environment_defs.append(
        defs.Environ(parms, 'XYZ', args='A', repl='#1', add_pars=False))
    p = parser.Parser(parms)
    toks = p.parse(latex_macro_in_arg)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_macro_in_arg == plain
示例#10
0
def test_2():
    parms = parameters.Parameters()
    parms.item_default_label = ['*']
    parms.item_punctuation = []
    p = parser.Parser(parms)
    toks = p.parse(latex_2)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_2 == plain
示例#11
0
def test_4(capsys):
    capsys.readouterr()
    p = parser.Parser(parameters.Parameters())
    toks = p.parse(latex_4, source='t.tex')
    plain, pos = utils.get_txt_pos(toks)
    cap = capsys.readouterr()
    assert plain_4 == plain
    assert cap.err == stderr_4
示例#12
0
def test_2():
    def read(file):
        return True, r'\usepackage{xcolor}\newcommand{\xxx}[1]{ #1 #1}'

    parms = parameters.Parameters()
    p = parser.Parser(parms, read_macros=read)
    toks = p.parse(latex_2)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_2 == plain
示例#13
0
def test_3():
    def read(file):
        return True, sed_3

    parms = parameters.Parameters()
    p = parser.Parser(parms, read_macros=read)
    toks = p.parse(latex_3)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_3 == plain
示例#14
0
def test_5():
    def read(file):
        return True, r'\usepackage{amsmath}'

    parms = parameters.Parameters()
    p = parser.Parser(parms, read_macros=read)
    toks = p.parse(latex_5)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_5 == plain
示例#15
0
def test_3():
    # replace verbatim
    parms = parameters.Parameters()
    parms.environment_defs.append(
        defs.Environ(parms, 'verbatim', repl='[verbatim]', remove=True))
    p = parser.Parser(parms)
    toks = p.parse(latex_1)
    plain, pos = utils.get_txt_pos(toks)
    assert plain == plain_3
示例#16
0
def test_1():
    toks = p.parse(latex1)
    plain1, pos1 = utils.get_txt_pos(toks)

    assert plain1_should_be == plain1

    assert pos1[0] == 0  # initial '\n' in plain
    assert pos1[1] == 12  # \, position of \textbackslash
    assert pos1[2] == 8  # 1 of 12
    assert pos1[3] == 9  # 2 of 12
示例#17
0
def get_plain(latex):
    def read(file):
        try:
            with open(file) as f:
                return True, f.read()
        except:
            return False, ''
    parms = parameters.Parameters()
    p = parser.Parser(parms, read_macros=read)
    plain, nums = utils.get_txt_pos(p.parse(preamble + latex))
    assert len(plain) == len(nums)
    return plain
示例#18
0
def test_6(capsys):
    def read(file):
        return True, sed_6

    capsys.readouterr()
    parms = parameters.Parameters()
    p = parser.Parser(parms, read_macros=read)
    toks = p.parse(latex_6, source='t.tex')
    plain, pos = utils.get_txt_pos(toks)
    captured = capsys.readouterr()
    assert plain_6 == plain
    assert stderr_6 == captured.err
示例#19
0
def test_8(capsys):
    capsys.readouterr()

    def read(file):
        return False, ''

    parms = parameters.Parameters()
    p = parser.Parser(parms, read_macros=read)
    toks = p.parse(latex_8, source='t.tex')
    plain, pos = utils.get_txt_pos(toks)
    captured = capsys.readouterr()
    assert plain_8 == plain
    assert stderr_8 == captured.err
示例#20
0
def test_2():
    parms = parameters.Parameters()
    parms.macro_defs_python.append(
        defs.Macro(parms,
                   '\\xxx',
                   args='OA',
                   repl='a#1b',
                   defaults=['X'],
                   extract='a#1b#2'))
    p = parser.Parser(parms)
    toks = p.parse(latex_2)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_2 == plain
示例#21
0
def test_2():
    p = parser.Parser(parameters.Parameters())
    toks = p.parse(latex_2)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_2 == plain
示例#22
0
def test_5():
    toks = p.parse(latex_5)
    plain, pos = utils.get_txt_pos(toks)
    assert plain == plain_5
示例#23
0
def test_4():
    p = parser.Parser(parameters.Parameters(language='ru'))
    toks = p.parse(latex_4)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_4 == plain
示例#24
0
def test_1():
    toks = p.parse(latex_1)
    plain, pos = utils.get_txt_pos(toks)
    assert plain_1 == plain
示例#25
0
def test_nested_macro():

    latex = '\\usepackage{xcolor}\\textcolor{x}{\\textcolor{y}{z}}'
    toks = p.parse(latex)
    plain, pos = utils.get_txt_pos(toks)
    assert plain == 'z'
示例#26
0
def test_1():
    toks = p.parse(latex1)
    plain1, pos1 = utils.get_txt_pos(toks)

    assert plain1_should_be == plain1
示例#27
0
def test_2():
    toks = p.parse(latex2)
    plain2, pos2 = utils.get_txt_pos(toks)

    assert plain2_should_be == plain2
示例#28
0
def test_3():
    toks = p.parse(latex3)
    plain3, pos3 = utils.get_txt_pos(toks)

    assert plain3_should_be == plain3
示例#29
0
def get_plain(latex):
    parms = parameters.Parameters()
    p = parser.Parser(parms)
    plain, nums = utils.get_txt_pos(p.parse(preamble + latex))
    assert len(plain) == len(nums)
    return plain
示例#30
0
def test_macro_in_arg():
    toks = p.parse(latex_macro_in_arg)
    plain, pos3 = utils.get_txt_pos(toks)
    assert plain_macro_in_arg == plain