示例#1
0
 def test_single_subst_end(self):
     s = 'I like ' + _var('favcolour')
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     self.assertEqual(tv.render(CONTEXT),
                      _poor_mans_template(s, 'favcolour',
                                          CONTEXT['favcolour']))
示例#2
0
 def test_single_subst_end(self):
     s = 'I like ' + _var('favcolour')
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     self.assertEqual(
         tv.render(CONTEXT),
         _poor_mans_template(s, 'favcolour', CONTEXT['favcolour']))
示例#3
0
 def test_single_subst_start(self):
     s = _var('favcolour') + ' is my favourite colour'
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     self.assertEqual(tv.render(CONTEXT),
                      _poor_mans_template(s, 'favcolour',
                                          CONTEXT['favcolour']))
示例#4
0
 def test_single_subst_start(self):
     s = _var('favcolour') + ' is my favourite colour'
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     self.assertEqual(
         tv.render(CONTEXT),
         _poor_mans_template(s, 'favcolour', CONTEXT['favcolour']))
示例#5
0
 def test_multiple_subst(self):
     greet = PARAMETER_INTERPOLATION_DELIMITER.join(('motd', 'greeting'))
     s = _var(greet) + ' I like ' + _var('favcolour') + '!'
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     want = _poor_mans_template(s, greet, CONTEXT['motd']['greeting'])
     want = _poor_mans_template(want, 'favcolour', CONTEXT['favcolour'])
     self.assertEqual(tv.render(CONTEXT), want)
示例#6
0
 def test_deep_subst_solo(self):
     var = PARAMETER_INTERPOLATION_DELIMITER.join(('motd', 'greeting'))
     s = _var(var)
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     self.assertEqual(tv.render(CONTEXT),
                      _poor_mans_template(s, var,
                                          CONTEXT['motd']['greeting']))
示例#7
0
 def test_deep_subst_solo(self):
     var = PARAMETER_INTERPOLATION_DELIMITER.join(('motd', 'greeting'))
     s = _var(var)
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     self.assertEqual(
         tv.render(CONTEXT),
         _poor_mans_template(s, var, CONTEXT['motd']['greeting']))
示例#8
0
 def test_multiple_subst_flush(self):
     greet = PARAMETER_INTERPOLATION_DELIMITER.join(('motd', 'greeting'))
     s = _var(greet) + ' I like ' + _var('favcolour')
     tv = ReferenceStringParameter(s)
     self.assertTrue(tv.has_references())
     want = _poor_mans_template(s, greet, CONTEXT['motd']['greeting'])
     want = _poor_mans_template(want, 'favcolour', CONTEXT['favcolour'])
     self.assertEqual(tv.render(CONTEXT), want)
示例#9
0
 def _test_solo_ref(self, key):
     s = _var(key)
     tv = ReferenceStringParameter(s)
     res = tv.render(CONTEXT)
     self.assertTrue(tv.has_references())
     self.assertEqual(res, CONTEXT[key])
示例#10
0
 def test_simple_string(self):
     s = 'my cat likes to hide in boxes'
     tv = ReferenceStringParameter(s)
     self.assertFalse(tv.has_references())
     self.assertEquals(tv.render(CONTEXT), s)
示例#11
0
 def test_undefined_variable(self):
     s = _var('no_such_variable')
     tv = ReferenceStringParameter(s)
     with self.assertRaises(UndefinedVariableError):
         tv.render(CONTEXT)
示例#12
0
 def _test_solo_ref(self, key):
     s = _var(key)
     tv = ReferenceStringParameter(s)
     res = tv.render(CONTEXT)
     self.assertTrue(tv.has_references())
     self.assertEqual(res, CONTEXT[key])
示例#13
0
 def test_simple_string(self):
     s = 'my cat likes to hide in boxes'
     tv = ReferenceStringParameter(s)
     self.assertFalse(tv.has_references())
     self.assertEquals(tv.render(CONTEXT), s)
示例#14
0
 def test_undefined_variable(self):
     s = _var('no_such_variable')
     tv = ReferenceStringParameter(s)
     with self.assertRaises(UndefinedVariableError):
         tv.render(CONTEXT)