示例#1
0
 def test_normal_name(self):
     t = Template('{{ u |a}}')
     self.assertEqual('u', t.normal_name())
     self.assertEqual('U', t.normal_name(capital_links=True))
     t = Template('{{ template: u |a}}')
     self.assertEqual('u', t.normal_name())
     t = Template('{{ الگو:u |a}}')
     self.assertEqual('u', t.normal_name(['الگو']))
     t = Template('{{a_b}}')
     self.assertEqual('a b', t.normal_name())
     t = Template('{{t#a|a}}')
     self.assertEqual('t', t.normal_name())
     t = Template('{{ : fa : Template : t  # A }}')
     self.assertEqual('t', t.normal_name(code='fa'))
     t = Template('{{ : t |a}}')
     self.assertEqual('t', t.normal_name())
     t = Template('{{A___B}}')
     self.assertEqual('A B', t.normal_name())
def test_normal_name():
    normal_name = Template('{{ u |a}}').normal_name
    assert 'u' == normal_name()
    assert 'U' == normal_name(capitalize=True)
    assert 'u' == Template('{{ template: u |a}}').normal_name()
    assert 'u' == Template('{{ الگو:u |a}}').normal_name(['الگو'])
    assert 'a b' == Template('{{a_b}}').normal_name()
    assert 't' == Template('{{t#a|a}}').normal_name()
    t = Template('{{ : fa : Template : t  # A }}')
    assert 't' == t.normal_name(code='fa')
    assert 't' == Template('{{ : t |a}}').normal_name()
    assert 'A B' == Template('{{A___B}}').normal_name()
    assert 'T' == Template('{{_<!---->\n _T_ \n<!---->_}}').normal_name()
示例#3
0
def test_normal_name():
    normal_name = Template('{{ u |a}}').normal_name
    assert 'u' == normal_name()
    assert 'U' == normal_name(capitalize=True)
    warns(DeprecationWarning, normal_name, capital_links=True)
    assert 'u' == Template('{{ template: u |a}}').normal_name()
    assert 'u' == Template('{{ الگو:u |a}}').normal_name(['الگو'])
    assert 'a b' == Template('{{a_b}}').normal_name()
    assert 't' == Template('{{t#a|a}}').normal_name()
    t = Template('{{ : fa : Template : t  # A }}')
    assert 't' == t.normal_name(code='fa')
    warns(DeprecationWarning, t.normal_name, _code='fa')
    assert 't' == Template('{{ : t |a}}').normal_name()
    assert 'A B' == Template('{{A___B}}').normal_name()
示例#4
0
 def test_normal_name(self):
     ae = self.assertEqual
     aw = self.assertWarns
     normal_name = Template('{{ u |a}}').normal_name
     ae('u', normal_name())
     ae('U', normal_name(capitalize=True))
     aw(DeprecationWarning, normal_name, capital_links=True)
     ae('u', Template('{{ template: u |a}}').normal_name())
     ae('u', Template('{{ الگو:u |a}}').normal_name(['الگو']))
     ae('a b', Template('{{a_b}}').normal_name())
     ae('t', Template('{{t#a|a}}').normal_name())
     t = Template('{{ : fa : Template : t  # A }}')
     ae('t', t.normal_name(code='fa'))
     aw(DeprecationWarning, t.normal_name, _code='fa')
     ae('t', Template('{{ : t |a}}').normal_name())
     ae('A B', Template('{{A___B}}').normal_name())
示例#5
0
def _get_template_content(template: Template, template_definitions: dict,
                          visited_templates: set) -> Tuple[Optional[str], set]:
    if not template or not template.string.startswith('{{'):
        return None, visited_templates
    try:
        name = template.normal_name(capitalize=True)
    except IndexError:
        return '', visited_templates
    if name in visited_templates:
        return '', visited_templates
    visited_templates.add(name)

    content = wtp.parse(template_definitions[name])
    content = _apply_parameters(content, _get_template_arguments(template))
    for it in content.templates:
        it_content, _ = _get_template_content(it, template_definitions,
                                              visited_templates)
        if it_content is not None:
            content[slice(*it.span)] = it_content
    return content.string, visited_templates