1
0
mirror of https://github.com/ihabunek/toot.git synced 2024-06-23 06:25:26 +00:00

Make verify_credentials return the http response

Required if we want to emit json without decoding it
This commit is contained in:
Ivan Habunek 2023-11-18 14:55:45 +01:00
parent 317840b019
commit 6cdba16fcf
No known key found for this signature in database
GPG Key ID: F5F0623FF5EBCB3D
5 changed files with 22 additions and 43 deletions

View File

@ -12,7 +12,7 @@ def test_update_account_display_name(run, app, user):
out = run("update_account", "--display-name", "elwood") out = run("update_account", "--display-name", "elwood")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["display_name"] == "elwood" assert account["display_name"] == "elwood"
@ -23,7 +23,7 @@ def test_update_account_note(run, app, user):
out = run("update_account", "--note", note) out = run("update_account", "--note", note)
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert get_text(account["note"]) == note assert get_text(account["note"]) == note
@ -31,7 +31,7 @@ def test_update_account_language(run, app, user):
out = run("update_account", "--language", "hr") out = run("update_account", "--language", "hr")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["source"]["language"] == "hr" assert account["source"]["language"] == "hr"
@ -39,29 +39,29 @@ def test_update_account_privacy(run, app, user):
out = run("update_account", "--privacy", "private") out = run("update_account", "--privacy", "private")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["source"]["privacy"] == "private" assert account["source"]["privacy"] == "private"
def test_update_account_avatar(run, app, user): def test_update_account_avatar(run, app, user):
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
old_value = account["avatar"] old_value = account["avatar"]
out = run("update_account", "--avatar", TRUMPET) out = run("update_account", "--avatar", TRUMPET)
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["avatar"] != old_value assert account["avatar"] != old_value
def test_update_account_header(run, app, user): def test_update_account_header(run, app, user):
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
old_value = account["header"] old_value = account["header"]
out = run("update_account", "--header", TRUMPET) out = run("update_account", "--header", TRUMPET)
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["header"] != old_value assert account["header"] != old_value
@ -69,13 +69,13 @@ def test_update_account_locked(run, app, user):
out = run("update_account", "--locked") out = run("update_account", "--locked")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["locked"] is True assert account["locked"] is True
out = run("update_account", "--no-locked") out = run("update_account", "--no-locked")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["locked"] is False assert account["locked"] is False
@ -83,13 +83,13 @@ def test_update_account_bot(run, app, user):
out = run("update_account", "--bot") out = run("update_account", "--bot")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["bot"] is True assert account["bot"] is True
out = run("update_account", "--no-bot") out = run("update_account", "--no-bot")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["bot"] is False assert account["bot"] is False
@ -97,13 +97,13 @@ def test_update_account_discoverable(run, app, user):
out = run("update_account", "--discoverable") out = run("update_account", "--discoverable")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["discoverable"] is True assert account["discoverable"] is True
out = run("update_account", "--no-discoverable") out = run("update_account", "--no-discoverable")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["discoverable"] is False assert account["discoverable"] is False
@ -111,11 +111,11 @@ def test_update_account_sensitive(run, app, user):
out = run("update_account", "--sensitive") out = run("update_account", "--sensitive")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["source"]["sensitive"] is True assert account["source"]["sensitive"] is True
out = run("update_account", "--no-sensitive") out = run("update_account", "--no-sensitive")
assert out == "✓ Account updated" assert out == "✓ Account updated"
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
assert account["source"]["sensitive"] is False assert account["source"]["sensitive"] is False

View File

@ -36,25 +36,3 @@ def test_create_app_registered(monkeypatch):
app = auth.create_app_interactive("bezdomni.net") app = auth.create_app_interactive("bezdomni.net")
assert app == 'registered app' assert app == 'registered app'
def test_create_user(monkeypatch):
app = App(4, 5, 6, 7)
def assert_user(user, activate=True):
assert activate
assert isinstance(user, User)
assert user.instance == app.instance
assert user.username == "foo"
assert user.access_token == "abc"
monkeypatch.setattr(config, 'save_user', assert_user)
monkeypatch.setattr(api, 'verify_credentials', lambda x, y: {"username": "foo"})
user = auth.create_user(app, 'abc')
assert_user(user)
#
# TODO: figure out how to mock input so the rest can be tested
#

View File

@ -1,8 +1,9 @@
import mimetypes import mimetypes
from os import path
import re import re
import uuid import uuid
from os import path
from requests import Response
from typing import BinaryIO, List, Optional from typing import BinaryIO, List, Optional
from urllib.parse import urlparse, urlencode, quote from urllib.parse import urlparse, urlencode, quote
@ -537,8 +538,8 @@ def blocked(app, user):
return _get_response_list(app, user, "/api/v1/blocks") return _get_response_list(app, user, "/api/v1/blocks")
def verify_credentials(app, user): def verify_credentials(app, user) -> Response:
return http.get(app, user, '/api/v1/accounts/verify_credentials').json() return http.get(app, user, '/api/v1/accounts/verify_credentials')
def single_status(app, user, status_id): def single_status(app, user, status_id):

View File

@ -66,7 +66,7 @@ def get_instance_domain(base_url):
def create_user(app, access_token): def create_user(app, access_token):
# Username is not yet known at this point, so fetch it from Mastodon # Username is not yet known at this point, so fetch it from Mastodon
user = User(app.instance, None, access_token) user = User(app.instance, None, access_token)
creds = api.verify_credentials(app, user) creds = api.verify_credentials(app, user).json()
user = User(app.instance, creds['username'], access_token) user = User(app.instance, creds['username'], access_token)
config.save_user(user, activate=True) config.save_user(user, activate=True)

View File

@ -516,7 +516,7 @@ def blocked(app, user, args):
def whoami(app, user, args): def whoami(app, user, args):
account = api.verify_credentials(app, user) account = api.verify_credentials(app, user).json()
print_account(account) print_account(account)