Skip to content

Commit adc6718

Browse files
committed
Fix validation code verification passing login_method as a string instead of a var
1 parent 3556550 commit adc6718

File tree

3 files changed

+22
-3
lines changed

3 files changed

+22
-3
lines changed

august/api_common.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ def _build_validate_verification_code_request(
171171
"method": "post",
172172
"url": API_VALIDATE_VERIFICATION_CODE_URLS[login_method],
173173
"access_token": access_token,
174-
"json": {"login_method": username, "code": str(verification_code)},
174+
"json": {login_method: username, "code": str(verification_code)},
175175
}
176176

177177
def _build_get_doorbells_request(self, access_token):

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
setup(
44
name="py-august",
5-
version="0.24.0",
5+
version="0.25.0",
66
packages=["august"],
77
url="https://github.com/snjoetw/py-august",
88
license="MIT",

tests/test_api_async.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,13 @@
33

44
from aiohttp import ClientError, ClientResponse, ClientSession
55
from aiohttp.helpers import TimerNoop
6-
from aioresponses import aioresponses
6+
from aioresponses import aioresponses, CallbackResult
77
import aiounittest
88
from asynctest import mock
99
import august.activity
1010
from august.api_async import ApiAsync, _raise_response_exceptions
1111
from august.api_common import (
12+
API_VALIDATE_VERIFICATION_CODE_URLS,
1213
API_GET_DOORBELL_URL,
1314
API_GET_DOORBELLS_URL,
1415
API_GET_HOUSE_ACTIVITIES_URL,
@@ -698,6 +699,24 @@ async def test_async_get_house_activities(self, mock):
698699
self.assertIsInstance(activities[8], august.activity.LockOperationActivity)
699700
self.assertIsInstance(activities[9], august.activity.LockOperationActivity)
700701

702+
@aioresponses()
703+
async def test_async_validate_verification_code(self, mock):
704+
last_args = {}
705+
706+
def response_callback(url, **kwargs):
707+
last_args.update(kwargs)
708+
return CallbackResult(status=200, body="{}")
709+
710+
mock.post(
711+
API_VALIDATE_VERIFICATION_CODE_URLS["email"], callback=response_callback
712+
)
713+
714+
api = ApiAsync(ClientSession())
715+
await api.async_validate_verification_code(
716+
ACCESS_TOKEN, "email", "emailaddress", 123456
717+
)
718+
assert last_args["json"] == {"code": "123456", "email": "emailaddress"}
719+
701720
def test__raise_response_exceptions(self):
702721
loop = mock.Mock()
703722
request_info = mock.Mock()

0 commit comments

Comments
 (0)