Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/django/contrib/messages/api.py: 38%

34 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2023-07-17 14:22 -0600

1from django.contrib.messages import constants 

2from django.contrib.messages.storage import default_storage 

3 

4__all__ = ( 

5 "add_message", 

6 "get_messages", 

7 "get_level", 

8 "set_level", 

9 "debug", 

10 "info", 

11 "success", 

12 "warning", 

13 "error", 

14 "MessageFailure", 

15) 

16 

17 

18class MessageFailure(Exception): 

19 pass 

20 

21 

22def add_message(request, level, message, extra_tags="", fail_silently=False): 

23 """ 

24 Attempt to add a message to the request using the 'messages' app. 

25 """ 

26 try: 

27 messages = request._messages 

28 except AttributeError: 

29 if not hasattr(request, "META"): 

30 raise TypeError( 

31 "add_message() argument must be an HttpRequest object, not " 

32 "'%s'." % request.__class__.__name__ 

33 ) 

34 if not fail_silently: 

35 raise MessageFailure( 

36 "You cannot add messages without installing " 

37 "django.contrib.messages.middleware.MessageMiddleware" 

38 ) 

39 else: 

40 return messages.add(level, message, extra_tags) 

41 

42 

43def get_messages(request): 

44 """ 

45 Return the message storage on the request if it exists, otherwise return 

46 an empty list. 

47 """ 

48 return getattr(request, "_messages", []) 

49 

50 

51def get_level(request): 

52 """ 

53 Return the minimum level of messages to be recorded. 

54 

55 The default level is the ``MESSAGE_LEVEL`` setting. If this is not found, 

56 use the ``INFO`` level. 

57 """ 

58 storage = getattr(request, "_messages", default_storage(request)) 

59 return storage.level 

60 

61 

62def set_level(request, level): 

63 """ 

64 Set the minimum level of messages to be recorded, and return ``True`` if 

65 the level was recorded successfully. 

66 

67 If set to ``None``, use the default level (see the get_level() function). 

68 """ 

69 if not hasattr(request, "_messages"): 

70 return False 

71 request._messages.level = level 

72 return True 

73 

74 

75def debug(request, message, extra_tags="", fail_silently=False): 

76 """Add a message with the ``DEBUG`` level.""" 

77 add_message( 

78 request, 

79 constants.DEBUG, 

80 message, 

81 extra_tags=extra_tags, 

82 fail_silently=fail_silently, 

83 ) 

84 

85 

86def info(request, message, extra_tags="", fail_silently=False): 

87 """Add a message with the ``INFO`` level.""" 

88 add_message( 

89 request, 

90 constants.INFO, 

91 message, 

92 extra_tags=extra_tags, 

93 fail_silently=fail_silently, 

94 ) 

95 

96 

97def success(request, message, extra_tags="", fail_silently=False): 

98 """Add a message with the ``SUCCESS`` level.""" 

99 add_message( 

100 request, 

101 constants.SUCCESS, 

102 message, 

103 extra_tags=extra_tags, 

104 fail_silently=fail_silently, 

105 ) 

106 

107 

108def warning(request, message, extra_tags="", fail_silently=False): 

109 """Add a message with the ``WARNING`` level.""" 

110 add_message( 

111 request, 

112 constants.WARNING, 

113 message, 

114 extra_tags=extra_tags, 

115 fail_silently=fail_silently, 

116 ) 

117 

118 

119def error(request, message, extra_tags="", fail_silently=False): 

120 """Add a message with the ``ERROR`` level.""" 

121 add_message( 

122 request, 

123 constants.ERROR, 

124 message, 

125 extra_tags=extra_tags, 

126 fail_silently=fail_silently, 

127 )