fixed user patching (see #4)

pull/5/head
Langenfeld 2021-04-19 13:17:14 +02:00
rodzic d36f9706c9
commit d0960a4b6f
3 zmienionych plików z 11 dodań i 9 usunięć

Wyświetl plik

@ -23,8 +23,6 @@ class BasicGiteaApiObject:
fields_to_parsers = {}
def commit(self):
""" TODO: evaluate if there is a generalizable version of this method
"""
raise NotImplemented()
def get_dirty_fields(self):

Wyświetl plik

@ -109,7 +109,7 @@ class User(GiteaApiObject):
USER_MAIL = """/user/emails?sudo=%s""" # <name>
USER_PATCH = """/admin/users/%s""" # <username>
ADMIN_DELETE_USER = """/admin/users/%s""" # <username>
ADMIN_EDIT_USER = """/admin/users/{name}""" # <username>
ADMIN_EDIT_USER = """/admin/users/{username}""" # <username>
USER_HEATMAP = """/users/%s/heatmap""" # <username>
def __init__(self, gitea, id: int):
@ -147,9 +147,9 @@ class User(GiteaApiObject):
def commit(self):
values = self.get_dirty_fields()
values.update(
{"email": self.email}
) # this request must always contain the email for identifying users
args = {"name": self.username, "email": self.email}
{"source_id": self.source_id, "login_name": self.username}
) # this request must always contain both, the user name and the _login source_ (e.g. ``None`` for local)
args = {"username": self.username}
self.gitea.requests_patch(User.ADMIN_EDIT_USER.format(**args), data=values)
self.dirty_fields = {}

Wyświetl plik

@ -60,15 +60,19 @@ def test_create_user(instance):
assert email in user.emails
assert user.email == email
assert not user.is_admin
assert type(user.id) is int
assert user.is_admin is False
def test_change_user(instance):
user = instance.get_user_by_name(test_user)
user.website = "other_testname"
user.full_name = "other_description"
new_website = "http://testwebsite.de"
user.website = new_website
new_fullname = "Other Test Full Name"
user.full_name = new_fullname
user.commit()
del(user)
user = instance.get_user_by_name(test_user)
assert user.full_name == "other_description"
assert user.full_name == new_fullname
def test_create_org(instance):