Skip to content
Snippets Groups Projects
Commit 3235ec0b authored by Nico's avatar Nico
Browse files

Support deleting contacts

Fixes #16
parent 514290c5
No related merge requests found
Pipeline #4748 failed
...@@ -8,6 +8,7 @@ Wrapper around Briar API's _/contacts/_ resource ...@@ -8,6 +8,7 @@ Wrapper around Briar API's _/contacts/_ resource
from operator import itemgetter from operator import itemgetter
from urllib.parse import urljoin from urllib.parse import urljoin
from requests import delete as _delete
from requests import get as _get from requests import get as _get
from requests import post as _post from requests import post as _post
...@@ -35,6 +36,19 @@ class Contacts(Model): ...@@ -35,6 +36,19 @@ class Contacts(Model):
url = urljoin(BASE_HTTP_URL, self._API_ENDPOINT + "add/pending/") url = urljoin(BASE_HTTP_URL, self._API_ENDPOINT + "add/pending/")
_post(url, headers=self._headers, json={"link": link, "alias": alias}) _post(url, headers=self._headers, json={"link": link, "alias": alias})
def delete(self, contact_id):
# pylint: disable=line-too-long
"""
Deletes the contact with `contact_id`
[Upstream documentation](https://code.briarproject.org/briar/briar/blob/master/briar-headless/README.md#removing-a-contact)
.. versionadded:: 0.0.4
"""
url = urljoin(BASE_HTTP_URL, self.API_ENDPOINT + str(contact_id))
_delete(url, headers=self._headers)
def get(self): def get(self):
# pylint: disable=line-too-long # pylint: disable=line-too-long
""" """
......
...@@ -48,6 +48,16 @@ def match_request_add_pending(request): ...@@ -48,6 +48,16 @@ def match_request_add_pending(request):
return {"alias": TEST_ALIAS, "link": TEST_LINK} == request.json() return {"alias": TEST_ALIAS, "link": TEST_LINK} == request.json()
@requests_mock.Mocker(kw="requests_mock")
def test_delete(api, request_headers, requests_mock):
contacts = Contacts(api)
contact_id = 137
requests_mock.register_uri("DELETE",
BASE_HTTP_URL + str(contact_id),
request_headers=request_headers)
contacts.delete(contact_id)
@requests_mock.Mocker(kw='requests_mock') @requests_mock.Mocker(kw='requests_mock')
def test_get(api, request_headers, requests_mock): def test_get(api, request_headers, requests_mock):
contacts = Contacts(api) contacts = Contacts(api)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment