Merge remote-tracking branch 'gabithume/146_debug_message'
This commit is contained in:
commit
aac428bac2
@ -14,16 +14,24 @@
|
|||||||
# You should have received a copy of the GNU Affero General Public License
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
from mediagoblin.tools import common
|
||||||
|
|
||||||
DEBUG = 'debug'
|
DEBUG = 'debug'
|
||||||
INFO = 'info'
|
INFO = 'info'
|
||||||
SUCCESS = 'success'
|
SUCCESS = 'success'
|
||||||
WARNING = 'warning'
|
WARNING = 'warning'
|
||||||
ERROR = 'error'
|
ERROR = 'error'
|
||||||
|
|
||||||
|
ADD_MESSAGE_TEST = []
|
||||||
|
|
||||||
|
|
||||||
def add_message(request, level, text):
|
def add_message(request, level, text):
|
||||||
messages = request.session.setdefault('messages', [])
|
messages = request.session.setdefault('messages', [])
|
||||||
messages.append({'level': level, 'text': text})
|
messages.append({'level': level, 'text': text})
|
||||||
|
|
||||||
|
if common.TESTS_ENABLED:
|
||||||
|
ADD_MESSAGE_TEST.append(messages)
|
||||||
|
|
||||||
request.session.save()
|
request.session.save()
|
||||||
|
|
||||||
|
|
||||||
@ -33,4 +41,10 @@ def fetch_messages(request, clear_from_session=True):
|
|||||||
# Save that we removed the messages from the session
|
# Save that we removed the messages from the session
|
||||||
request.session['messages'] = []
|
request.session['messages'] = []
|
||||||
request.session.save()
|
request.session.save()
|
||||||
|
|
||||||
return messages
|
return messages
|
||||||
|
|
||||||
|
|
||||||
|
def clear_add_message():
|
||||||
|
global ADD_MESSAGE_TEST
|
||||||
|
ADD_MESSAGE_TEST = []
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# You should have received a copy of the GNU Affero General Public License
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
from mediagoblin.messages import fetch_messages, add_message
|
from mediagoblin import messages
|
||||||
from mediagoblin.tools import template
|
from mediagoblin.tools import template
|
||||||
|
|
||||||
|
|
||||||
@ -32,11 +32,19 @@ def test_messages(test_app):
|
|||||||
# The message queue should be empty
|
# The message queue should be empty
|
||||||
assert request.session.get('messages', []) == []
|
assert request.session.get('messages', []) == []
|
||||||
|
|
||||||
|
# First of all, we should clear the messages queue
|
||||||
|
messages.clear_add_message()
|
||||||
# Adding a message should modify the session accordingly
|
# Adding a message should modify the session accordingly
|
||||||
add_message(request, 'herp_derp', 'First!')
|
messages.add_message(request, 'herp_derp', 'First!')
|
||||||
test_msg_queue = [{'text': 'First!', 'level': 'herp_derp'}]
|
test_msg_queue = [{'text': 'First!', 'level': 'herp_derp'}]
|
||||||
assert request.session['messages'] == test_msg_queue
|
|
||||||
|
# Alternative tests to the following, test divided in two steps:
|
||||||
|
# assert request.session['messages'] == test_msg_queue
|
||||||
|
# 1. Tests if add_message worked
|
||||||
|
assert messages.ADD_MESSAGE_TEST[-1] == test_msg_queue
|
||||||
|
# 2. Tests if add_message updated session information
|
||||||
|
assert messages.ADD_MESSAGE_TEST[-1] == request.session['messages']
|
||||||
|
|
||||||
# fetch_messages should return and empty the queue
|
# fetch_messages should return and empty the queue
|
||||||
assert fetch_messages(request) == test_msg_queue
|
assert messages.fetch_messages(request) == test_msg_queue
|
||||||
assert request.session.get('messages') == []
|
assert request.session.get('messages') == []
|
||||||
|
Loading…
x
Reference in New Issue
Block a user