lnbits-legend/tests/api/test_admin_api.py
2024-12-11 11:39:28 +02:00

41 lines
1.3 KiB
Python

import pytest
from lnbits.core.models import User
from lnbits.settings import Settings
@pytest.mark.anyio
async def test_admin_get_settings_permission_denied(client, from_user):
response = await client.get(f"/admin/api/v1/settings?usr={from_user.id}")
assert response.status_code == 401
@pytest.mark.anyio
async def test_admin_get_settings(client, superuser):
response = await client.get(f"/admin/api/v1/settings?usr={superuser.id}")
assert response.status_code == 200
result = response.json()
assert "super_user" not in result
@pytest.mark.anyio
async def test_admin_update_settings(client, superuser: User, settings: Settings):
new_site_title = "UPDATED SITETITLE"
response = await client.put(
f"/admin/api/v1/settings?usr={superuser.id}",
json={"lnbits_site_title": new_site_title},
)
assert response.status_code == 200
result = response.json()
assert "status" in result
assert result.get("status") == "Success"
assert settings.lnbits_site_title == new_site_title
@pytest.mark.anyio
async def test_admin_update_noneditable_settings(client, superuser):
response = await client.put(
f"/admin/api/v1/settings?usr={superuser.id}",
json={"super_user": "UPDATED"},
)
assert response.status_code == 400