예제 #1
0
def test_objects_flatten_template_mixed(patch, tree):
    result = list(Lowering.flatten_template(tree, 'a{hello}b'))
    assert result == [
        flatten_to_string('a'),
        {'$OBJECT': 'code', 'code': 'hello'},
        flatten_to_string('b')
    ]
예제 #2
0
def test_objects_flatten_template_escapes4(patch, tree):
    result = list(Lowering.flatten_template(tree, r'\\{\\}\\'))
    assert result == [
        flatten_to_string(r'\\'),
        {'$OBJECT': 'code', 'code': '\\'},
        flatten_to_string(r'\\')
    ]
예제 #3
0
def test_objects_flatten_template_escapes_uni3(patch, tree):
    result = list(
        Lowering.flatten_template(tree, r"\N{LATIN CAPITAL LETTER A}")
    )
    assert result == [
        flatten_to_string(r"\N{LATIN CAPITAL LETTER A}"),
    ]
예제 #4
0
def test_objects_flatten_template_escapes4(patch, tree):
    result = list(Lowering.flatten_template(tree, r"\\{\\}\\"))
    assert result == [
        flatten_to_string(r"\\"),
        {"$OBJECT": "code", "code": "\\"},
        flatten_to_string(r"\\"),
    ]
예제 #5
0
def test_objects_flatten_template_mixed(patch, tree):
    result = list(Lowering.flatten_template(tree, "a{hello}b"))
    assert result == [
        flatten_to_string("a"),
        {"$OBJECT": "code", "code": "hello"},
        flatten_to_string("b"),
    ]
예제 #6
0
def test_objects_flatten_template_escapes_uni2(patch, tree):
    result = list(Lowering.flatten_template(tree, r'\U0001F600'))
    assert result == [
        flatten_to_string(r'\U0001F600'),
    ]
예제 #7
0
def test_objects_flatten_template_escapes_uni(patch, tree):
    result = list(Lowering.flatten_template(tree, r'\x42\t\u1212'))
    assert result == [
        flatten_to_string(r'\x42\t\u1212'),
    ]
예제 #8
0
def test_objects_flatten_template_escapes_newlines(patch, tree):
    result = list(Lowering.flatten_template(tree, r'\n\n'))
    assert result == [
        flatten_to_string(r'\n\n'),
    ]
예제 #9
0
def test_objects_flatten_template_escapes2(patch, tree):
    result = list(Lowering.flatten_template(tree, r'\\.\'.\".\\'))
    assert result == [
        flatten_to_string(r"""\\.'.".\\"""),
    ]
예제 #10
0
def test_objects_flatten_template_only_templates(patch, tree):
    result = list(Lowering.flatten_template(tree, '{hello}'))
    assert result == [{'$OBJECT': 'code', 'code': 'hello'}]
예제 #11
0
def test_objects_flatten_template_no_templates(patch, tree):
    result = list(Lowering.flatten_template(tree, '.s.'))
    assert result == [flatten_to_string('.s.')]
예제 #12
0
def test_objects_flatten_template_escapes3(patch, tree):
    result = list(Lowering.flatten_template(tree, r"\\\\\\"))
    assert result == [
        flatten_to_string(r"\\\\\\"),
    ]
예제 #13
0
def test_objects_flatten_template_only_templates(patch, tree):
    result = list(Lowering.flatten_template(tree, "{hello}"))
    assert result == [{"$OBJECT": "code", "code": "hello"}]