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'
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"
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')
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
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)
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)
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
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)
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)
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
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)
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)
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
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)
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""
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)