示例#1
0
def test_subscribe_forum_deletes_cache_keys(app, authed_client):
    add_permissions(app, ForumPermissions.MODIFY_SUBSCRIPTIONS)
    Forum.from_subscribed_user(1)
    ForumSubscription.user_ids_from_forum(5)
    response = authed_client.post('/subscriptions/forums/5')
    assert response.status_code == 200
    assert not cache.get(
        ForumSubscription.__cache_key_users__.format(forum_id=5)
    )
    assert not cache.get(
        ForumSubscription.__cache_key_of_user__.format(user_id=1)
    )
    assert ForumSubscription.user_ids_from_forum(5) == [3, 4, 1]
示例#2
0
def view_forum_subscriptions() -> flask.Response:
    """
    This is the endpoint to view forum and thread subscriptions. The
    ``forums_view_subscriptions`` permission is required to access this endpoint.

    .. :quickref: ForumSubscription; View forum subscriptions.

    **Example response**:

    .. parsed-literal::

       {
         "status": "success",
         "response": {
            "forum_subscriptions": [
              "<Forum>",
              "<Forum>"
            ],
            "thread_subscriptions": [
              "<ForumThread>",
              "<ForumThread>"
            ]
          }
        }

    :>json dict response: The forum and thread subscriptions

    :statuscode 200: The forum subscriptions
    """
    return flask.jsonify(Forum.from_subscribed_user(flask.g.user.id))