Esempio n. 1
0
 def test_object_type_repr(self):
     class X(object):
         pass
     assert object_type_repr(42) == 'int object'
     assert object_type_repr([]) == 'list object'
     assert object_type_repr(X()) == 'test_utils.X object'
     assert object_type_repr(None) == 'None'
     assert object_type_repr(Ellipsis) == 'Ellipsis'
Esempio n. 2
0
 def test_object_type_repr(self):
     class X(object):
         pass
     assert object_type_repr(42) == 'int object'
     assert object_type_repr([]) == 'list object'
     assert object_type_repr(X()) == 'test_utils.X object'
     assert object_type_repr(None) == 'None'
     assert object_type_repr(Ellipsis) == 'Ellipsis'
Esempio n. 3
0
    def test_object_type_repr(self):
        class X:
            pass

        assert object_type_repr(42) == "int object"
        assert object_type_repr([]) == "list object"
        assert object_type_repr(X()) == "test_utils.X object"
        assert object_type_repr(None) == "None"
        assert object_type_repr(Ellipsis) == "Ellipsis"
Esempio n. 4
0
 def test_object_type_repr(self):
     class X(object):
         pass
     self.assert_equal(object_type_repr(42), 'int object')
     self.assert_equal(object_type_repr([]), 'list object')
     self.assert_equal(object_type_repr(X()),
                      'jinja2.testsuite.utils.X object')
     self.assert_equal(object_type_repr(None), 'None')
     self.assert_equal(object_type_repr(Ellipsis), 'Ellipsis')
Esempio n. 5
0
 def test_object_type_repr(self):
     class X(object):
         pass
     self.assert_equal(object_type_repr(42), 'int object')
     self.assert_equal(object_type_repr([]), 'list object')
     self.assert_equal(object_type_repr(X()),
                      'jinja2.testsuite.utils.X object')
     self.assert_equal(object_type_repr(None), 'None')
     self.assert_equal(object_type_repr(Ellipsis), 'Ellipsis')
Esempio n. 6
0
 def _nonzero_fail_with_undefined_error(self, *args, **kwargs):
     if self._undefined_obj is jinja_utils.missing:
         hint = '{{%r}}' % self._undefined_name
         log.error('%s: Undefined variable found, in template' % hint)
     elif not isinstance(self._undefined_name, basestring):
         hint = '{{%s[%r]}}' % (jinja_utils.object_type_repr(self._undefined_obj), self._undefined_name)
         log.error('%s: Element not found, in template' % hint)
     else:
         hint = '{{%s.%s}}' % (jinja_utils.object_type_repr(self._undefined_obj), self._undefined_name)
         log.error('%s: Attribute not found, in template' % hint)
     return False
Esempio n. 7
0
 def _fail_with_undefined_error(self, *args, **kwargs):
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             hint = '%r is undefined' % self._undefined_name
         elif not isinstance(self._undefined_name, basestring):
             hint = '%s has no element %r' % (object_type_repr(self._undefined_obj), self._undefined_name)
         else:
             hint = '%r has no attribute %r' % (object_type_repr(self._undefined_obj), self._undefined_name)
     else:
         hint = self._undefined_hint
     raise self._undefined_exception(hint)
Esempio n. 8
0
 def _log_message(undef):
     if undef._undefined_hint is None:
         if undef._undefined_obj is missing:
             hint = '%s is undefined' % undef._undefined_name
         elif not isinstance(undef._undefined_name, string_types):
             hint = '%s has no element %s' % (object_type_repr(
                 undef._undefined_obj), undef._undefined_name)
         else:
             hint = '%s has no attribute %s' % (object_type_repr(
                 undef._undefined_obj), undef._undefined_name)
     else:
         hint = undef._undefined_hint
     logger.warning('Template variable warning: %s', hint)
Esempio n. 9
0
 def _nonzero_fail_with_undefined_error(self, *args, **kwargs):
     if self._undefined_obj is jinja_utils.missing:
         hint = '{{%r}}' % self._undefined_name
         log.error('%s: Undefined variable found, in template' % hint)
     elif not isinstance(self._undefined_name, basestring):
         hint = '{{%s[%r]}}' % (jinja_utils.object_type_repr(
             self._undefined_obj), self._undefined_name)
         log.error('%s: Element not found, in template' % hint)
     else:
         hint = '{{%s.%s}}' % (jinja_utils.object_type_repr(
             self._undefined_obj), self._undefined_name)
         log.error('%s: Attribute not found, in template' % hint)
     return False
Esempio n. 10
0
 def _fail_with_undefined_error(self, *args, **kwargs):
     """Regular callback function for undefined objects that raises an
     `UndefinedError` on call.
     """
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             hint = "%r is undefined" % self._undefined_name
         elif not isinstance(self._undefined_name, basestring):
             hint = "%s has no element %r" % (object_type_repr(self._undefined_obj), self._undefined_name)
         else:
             hint = "%r has no attribute %r" % (object_type_repr(self._undefined_obj), self._undefined_name)
     else:
         hint = self._undefined_hint
     raise self._undefined_exception(hint)
Esempio n. 11
0
 def _log_message(undef):
     if undef._undefined_hint is None:
         if undef._undefined_obj is missing:
             hint = '%s is undefined' % undef._undefined_name
         elif not isinstance(undef._undefined_name, string_types):
             hint = '%s has no element %s' % (
                 object_type_repr(undef._undefined_obj),
                 undef._undefined_name)
         else:
             hint = '%s has no attribute %s' % (
                 object_type_repr(undef._undefined_obj),
                 undef._undefined_name)
     else:
         hint = undef._undefined_hint
     logger.warning('Template variable warning: %s', hint)
Esempio n. 12
0
 def __str__(self):
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             return u'{{ %s }}' % self._undefined_name
         return '{{ no such element: %s[%r] }}' % (object_type_repr(
             self._undefined_obj), self._undefined_name)
     return u'{{ undefined value printed: %s }}' % self._undefined_hint
Esempio n. 13
0
 def _fail_with_undefined_error(self, *args, **kwargs):
     """Regular callback function for undefined objects that raises an
     `UndefinedError` on call.
     """
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             hint = '%r is undefined' % self._undefined_name
         elif not isinstance(self._undefined_name, string_types):
             hint = '%s has no element %r' % (object_type_repr(
                 self._undefined_obj), self._undefined_name)
         else:
             hint = '%r has no attribute %r' % (object_type_repr(
                 self._undefined_obj), self._undefined_name)
     else:
         hint = self._undefined_hint
     raise self._undefined_exception(hint)
Esempio n. 14
0
    def _undefined_message(self):
        """Build a message about the undefined value based on how it was
        accessed.
        """
        if self._undefined_hint:
            return self._undefined_hint

        if self._undefined_obj is missing:
            return '%r is undefined' % self._undefined_name

        if not isinstance(self._undefined_name, string_types):
            return '%s has no element %r' % (object_type_repr(
                self._undefined_obj), self._undefined_name)

        return '%r has no attribute %r' % (object_type_repr(
            self._undefined_obj), self._undefined_name)
Esempio n. 15
0
 def __str__(self):
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             return u'{{ %s }}' % self._undefined_name
         return '{{ no such element: %s[%r] }}' % (
             object_type_repr(self._undefined_obj),
             self._undefined_name
         )
     return u'{{ undefined value printed: %s }}' % self._undefined_hint
Esempio n. 16
0
 def __str__(self):
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             return u'{{{{ {0!s} }}}}'.format(self._undefined_name)
         return '{{{{ no such element: {0!s}[{1!r}] }}}}'.format(
             object_type_repr(self._undefined_obj),
             self._undefined_name
         )
     return u'{{{{ undefined value printed: {0!s} }}}}'.format(self._undefined_hint)
Esempio n. 17
0
 def __str__(self):
     # Takes aim from jinja2.runtime.DebugUndefined
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             hint = "{variable} is undefined".format(variable=self._undefined_name)
         elif not isinstance(self._undefined_name, string_types):
             hint = "{object} has no element {element}".format(
                 object=object_type_repr(self._undefined_obj), element=self._undefined_name
             )
         else:
             hint = "{object} has no attribute {attribute}".format(
                 object=object_type_repr(self._undefined_obj), attribute=self._undefined_name
             )
     else:
         hint = self._undefined_hint
     self.logger.error("Template error: {hint}".format(hint=hint))
     # Return a empty string so that the variable in the template is empty
     # on render.
     return u""
Esempio n. 18
0
 def _fail_with_undefined_error(self, *args, **kwargs):
     """Regular callback function for undefined objects that raises an
     `UndefinedError` on call.
     """
     if self._undefined_hint is None:
         if self._undefined_obj is missing:
             hint = '{0!r} is undefined'.format(self._undefined_name)
         elif not isinstance(self._undefined_name, string_types):
             hint = '{0!s} has no element {1!r}'.format(
                 object_type_repr(self._undefined_obj),
                 self._undefined_name
             )
         else:
             hint = '{0!r} has no attribute {1!r}'.format(
                 object_type_repr(self._undefined_obj),
                 self._undefined_name
             )
     else:
         hint = self._undefined_hint
     raise self._undefined_exception(hint)