kopia lustrzana https://github.com/Langenfeld/py-gitea
fixed user patching (see #4)
rodzic
d36f9706c9
commit
d0960a4b6f
|
@ -23,8 +23,6 @@ class BasicGiteaApiObject:
|
||||||
fields_to_parsers = {}
|
fields_to_parsers = {}
|
||||||
|
|
||||||
def commit(self):
|
def commit(self):
|
||||||
""" TODO: evaluate if there is a generalizable version of this method
|
|
||||||
"""
|
|
||||||
raise NotImplemented()
|
raise NotImplemented()
|
||||||
|
|
||||||
def get_dirty_fields(self):
|
def get_dirty_fields(self):
|
||||||
|
|
|
@ -109,7 +109,7 @@ class User(GiteaApiObject):
|
||||||
USER_MAIL = """/user/emails?sudo=%s""" # <name>
|
USER_MAIL = """/user/emails?sudo=%s""" # <name>
|
||||||
USER_PATCH = """/admin/users/%s""" # <username>
|
USER_PATCH = """/admin/users/%s""" # <username>
|
||||||
ADMIN_DELETE_USER = """/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>
|
USER_HEATMAP = """/users/%s/heatmap""" # <username>
|
||||||
|
|
||||||
def __init__(self, gitea, id: int):
|
def __init__(self, gitea, id: int):
|
||||||
|
@ -147,9 +147,9 @@ class User(GiteaApiObject):
|
||||||
def commit(self):
|
def commit(self):
|
||||||
values = self.get_dirty_fields()
|
values = self.get_dirty_fields()
|
||||||
values.update(
|
values.update(
|
||||||
{"email": self.email}
|
{"source_id": self.source_id, "login_name": self.username}
|
||||||
) # this request must always contain the email for identifying users
|
) # this request must always contain both, the user name and the _login source_ (e.g. ``None`` for local)
|
||||||
args = {"name": self.username, "email": self.email}
|
args = {"username": self.username}
|
||||||
self.gitea.requests_patch(User.ADMIN_EDIT_USER.format(**args), data=values)
|
self.gitea.requests_patch(User.ADMIN_EDIT_USER.format(**args), data=values)
|
||||||
self.dirty_fields = {}
|
self.dirty_fields = {}
|
||||||
|
|
||||||
|
|
|
@ -60,15 +60,19 @@ def test_create_user(instance):
|
||||||
assert email in user.emails
|
assert email in user.emails
|
||||||
assert user.email == email
|
assert user.email == email
|
||||||
assert not user.is_admin
|
assert not user.is_admin
|
||||||
|
assert type(user.id) is int
|
||||||
|
assert user.is_admin is False
|
||||||
|
|
||||||
def test_change_user(instance):
|
def test_change_user(instance):
|
||||||
user = instance.get_user_by_name(test_user)
|
user = instance.get_user_by_name(test_user)
|
||||||
user.website = "other_testname"
|
new_website = "http://testwebsite.de"
|
||||||
user.full_name = "other_description"
|
user.website = new_website
|
||||||
|
new_fullname = "Other Test Full Name"
|
||||||
|
user.full_name = new_fullname
|
||||||
user.commit()
|
user.commit()
|
||||||
del(user)
|
del(user)
|
||||||
user = instance.get_user_by_name(test_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):
|
def test_create_org(instance):
|
||||||
|
|
Ładowanie…
Reference in New Issue