def test_make_message(client): pm = PrivateConversation.from_pk(1) pm.set_state(1) pm_state = PrivateConversationState.from_attrs(conv_id=1, user_id=1) assert (datetime.utcnow().replace(tzinfo=pytz.utc) - pm.last_response_time).total_seconds() > 60 * 60 assert cache.has(pm_state.cache_key) PrivateMessage.new(conv_id=1, user_id=2, contents='hi') assert not cache.has(pm_state.cache_key) pm.set_state(1) assert (datetime.utcnow().replace(tzinfo=pytz.utc) - pm.last_response_time).total_seconds() < 15
def modify_conversation(user: User, id: int, read: bool = None, deleted: bool = None): pm_state = PrivateConversationState.from_attrs(conv_id=id, user_id=user.id, deleted='f') if not pm_state: raise _403Exception( 'You cannot modify a conversation that you are not a member of.') if read: pm_state.read = read if deleted: pm_state.deleted = deleted db.session.commit() PrivateConversation.clear_cache_keys(user.id) return flask.jsonify(f'Successfully modified conversation {id}.')
def test_view_conversation_deleted(app, authed_client): PrivateConversationState.from_attrs(conv_id=1, user_id=1).deleted = True db.session.commit() response = authed_client.get( '/messages/conversations/1').get_json()['response'] assert response == 'PrivateConversation 1 does not exist.'