1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
# -*- coding: utf-8 -*-
"""
Basic SmartyLexer Test
~~~~~~~~~~~~~~~~~~~~
:copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
"""
import unittest
from pygments.token import Operator, Number, Text, Token
from pygments.lexers import SmartyLexer
class SmartyTest(unittest.TestCase):
def setUp(self):
self.lexer = SmartyLexer()
def testNestedCurly(self):
fragment = u'{templateFunction param={anotherFunction} param2=$something}\n'
tokens = [
(Token.Comment.Preproc, u'{'),
(Token.Name.Function, u'templateFunction'),
(Token.Text, u' '),
(Token.Name.Attribute, u'param'),
(Token.Operator, u'='),
(Token.Comment.Preproc, u'{'),
(Token.Name.Attribute, u'anotherFunction'),
(Token.Comment.Preproc, u'}'),
(Token.Text, u' '),
(Token.Name.Attribute, u'param2'),
(Token.Operator, u'='),
(Token.Name.Variable, u'$something'),
(Token.Comment.Preproc, u'}'),
(Token.Other, u'\n'),
]
self.assertEqual(tokens, list(self.lexer.get_tokens(fragment)))
|