Пример #1
0
 def testVariable(self, name, src, vars_set, outs, exception=False):
     if exception:
         self.assertRaises(TemplatePyPPLSyntaxError,
                           TemplatePyPPLEngine._variable, name, src,
                           vars_set)
     else:
         TemplatePyPPLEngine._variable(name, src, vars_set)
     self.assertDictEqual(vars_set, outs)
Пример #2
0
 def testFlushOutput(self, buffers, out):
     engine = TemplatePyPPLEngine('')
     engine.buffered = buffers
     engine.flushOutput()
     self.assertListEqual(engine.buffered, [])
     self.assertEqual(
         str(engine.code)[len(self.renderFunc_start +
                              self.renderFunc_end):], out)
Пример #3
0
 def testParseTag(self, token, src, stack, out, exception=False):
     engine = TemplatePyPPLEngine('')
     if exception:
         self.assertRaises(TemplatePyPPLSyntaxError, engine._parseTag,
                           token, src, stack)
     else:
         engine._parseTag(token, src, stack)
         self.assertEqual(
             str(engine.code)[len(self.renderFunc_start +
                                  self.renderFunc_end):], out)
Пример #4
0
 def testDoDots(self, dots, out, exception=False):
     if exception:
         self.assertRaises(TemplatePyPPLRenderError,
                           TemplatePyPPLEngine._do_dots, *dots)
     else:
         v = TemplatePyPPLEngine._do_dots(*dots)
         self.assertEqual(v, out)
Пример #5
0
 def testInit(self, text, contexts, renderfunc, exception=None, msg=None):
     if exception and not msg:
         self.assertRaises(exception, TemplatePyPPLEngine, text, *contexts)
     elif exception:
         self.assertRaisesRegex(exception, msg, TemplatePyPPLEngine, text,
                                *contexts)
     else:
         engine = TemplatePyPPLEngine(text, *contexts)
         renderfunc = renderfunc.lstrip('\n').split('\n')
         renderfunc = '\n'.join(line[2:] for line in renderfunc)
         helpers.assertTextEqual(
             self,
             engine.renderFunctionStr[len(self.renderFunc_start
                                          ):-len(self.renderFunc_end)],
             renderfunc)
Пример #6
0
 def dataProvider_testStr(self):
     yield TemplatePyPPLEngine(''), ''
     yield TemplatePyPPLEngine('abcd\nwnfe'), \
     """
Пример #7
0
 def testRenderExceptions(self, text, context, exception, msg):
     engine = TemplatePyPPLEngine(text)
     self.assertRaisesRegex(exception, msg, engine.render, context)
Пример #8
0
 def testExprCode(self, expr, out):
     engine = TemplatePyPPLEngine('')
     code = engine._exprCode(expr, '')
     self.assertEqual(code, out)
Пример #9
0
 def testParseLiteral(self, tokenlines, buffer):
     engine = TemplatePyPPLEngine('')
     engine._parseLiteral(tokenlines.split('\n'), '')
     self.assertListEqual(engine.buffered, buffer)
Пример #10
0
 def testParseExpression(self, token, src, buffer):
     engine = TemplatePyPPLEngine('')
     self.assertIsNone(engine._parseExpression(token, src))
     self.assertListEqual(engine.buffered, buffer)
Пример #11
0
 def testParseComments(self, token, src, exception=None):
     engine = TemplatePyPPLEngine('')
     if exception:
         self.assertRaises(exception, engine._parseComments, token, src)
     else:
         self.assertIsNone(engine._parseComments(token, src))