Skip to content

Commit 0185e51

Browse files
committed
refactoring signature-related tests into their own file, adding new test for patch method
1 parent 7d5d53e commit 0185e51

File tree

2 files changed

+17
-85
lines changed

2 files changed

+17
-85
lines changed

tests/test_client.py

Lines changed: 0 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -3,90 +3,6 @@
33
from vonage.errors import InvalidAuthenticationTypeError
44

55

6-
def test_check_signature(dummy_data):
7-
params = {
8-
"a": "1",
9-
"b": "2",
10-
"timestamp": "1461605396",
11-
"sig": "6af838ef94998832dbfc29020b564830",
12-
}
13-
14-
client = vonage.Client(
15-
key=dummy_data.api_key, secret=dummy_data.api_secret, signature_secret="secret"
16-
)
17-
18-
assert client.check_signature(params)
19-
20-
21-
def test_signature(client, dummy_data):
22-
params = {"a": "1", "b": "2", "timestamp": "1461605396"}
23-
client = vonage.Client(
24-
key=dummy_data.api_key, secret=dummy_data.api_secret, signature_secret="secret"
25-
)
26-
assert client.signature(params) == "6af838ef94998832dbfc29020b564830"
27-
28-
29-
def test_signature_adds_timestamp(dummy_data):
30-
params = {"a=7": "1", "b": "2 & 5"}
31-
32-
client = vonage.Client(
33-
key=dummy_data.api_key, secret=dummy_data.api_secret, signature_secret="secret"
34-
)
35-
36-
client.signature(params)
37-
assert params["timestamp"] is not None
38-
39-
40-
def test_signature_md5(dummy_data):
41-
params = {"a": "1", "b": "2", "timestamp": "1461605396"}
42-
client = vonage.Client(
43-
key=dummy_data.api_key,
44-
secret=dummy_data.api_secret,
45-
signature_secret=dummy_data.signature_secret,
46-
signature_method="md5",
47-
)
48-
assert client.signature(params) == "c15c21ced558c93a226c305f58f902f2"
49-
50-
51-
def test_signature_sha1(dummy_data):
52-
params = {"a": "1", "b": "2", "timestamp": "1461605396"}
53-
client = vonage.Client(
54-
key=dummy_data.api_key,
55-
secret=dummy_data.api_secret,
56-
signature_secret=dummy_data.signature_secret,
57-
signature_method="sha1",
58-
)
59-
assert client.signature(params) == "3e19a4e6880fdc2c1426bfd0587c98b9532f0210"
60-
61-
62-
def test_signature_sha256(dummy_data):
63-
params = {"a": "1", "b": "2", "timestamp": "1461605396"}
64-
client = vonage.Client(
65-
key=dummy_data.api_key,
66-
secret=dummy_data.api_secret,
67-
signature_secret=dummy_data.signature_secret,
68-
signature_method="sha256",
69-
)
70-
assert (
71-
client.signature(params)
72-
== "a321e824b9b816be7c3f28859a31749a098713d39f613c80d455bbaffae1cd24"
73-
)
74-
75-
76-
def test_signature_sha512(dummy_data):
77-
params = {"a": "1", "b": "2", "timestamp": "1461605396"}
78-
client = vonage.Client(
79-
key=dummy_data.api_key,
80-
secret=dummy_data.api_secret,
81-
signature_secret=dummy_data.signature_secret,
82-
signature_method="sha512",
83-
)
84-
assert (
85-
client.signature(params)
86-
== "812a18f76680fa0fe1b8bd9ee1625466ceb1bd96242e4d050d2cfd9a7b40166c63ed26ec9702168781b6edcf1633db8ff95af9341701004eec3fcf9550572ee8"
87-
)
88-
89-
906
def test_client_doesnt_require_api_key(dummy_data):
917
client = vonage.Client(application_id="myid", private_key=dummy_data.private_key)
928
assert client is not None
@@ -117,4 +33,3 @@ def test_timeout_is_set_on_client_calls(dummy_data):
11733

11834
assert len(responses.calls) == 1
11935
assert responses.calls[0].request.req_kwargs["timeout"] == 1
120-

tests/test_rest_calls.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,3 +80,20 @@ def test_delete_with_header_auth(client, dummy_data):
8080
assert isinstance(response, dict)
8181
assert request_user_agent() == dummy_data.user_agent
8282
assert_basic_auth()
83+
84+
85+
@responses.activate
86+
def test_patch(client, dummy_data):
87+
stub(responses.PATCH, "https://api.nexmo.com/v1/applications")
88+
host = "api.nexmo.com"
89+
request_uri = "/v1/applications"
90+
params = {"aaa": "xxx", "bbb": "yyy"}
91+
response = client.patch(host, request_uri, params=params, auth_type='jwt')
92+
assert request_headers()['Content-Type'] == 'application/json'
93+
assert re.search(b'^Bearer ', request_headers()['Authorization']) is not None
94+
assert isinstance(response, dict)
95+
assert request_user_agent() == dummy_data.user_agent
96+
assert b"aaa" in request_body()
97+
assert b"xxx" in request_body()
98+
assert b"bbb" in request_body()
99+
assert b"yyy" in request_body()

0 commit comments

Comments
 (0)