From fc276a8fe3b476d127aa8cec14e83ec7d45f0429 Mon Sep 17 00:00:00 2001 From: William Pietri Date: Mon, 4 Dec 2017 21:00:55 -0800 Subject: [PATCH] Adding some basic tests for static api functions. --- tests/test_ecovacs_api.py | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/tests/test_ecovacs_api.py b/tests/test_ecovacs_api.py index bfc5406..c92f9a7 100644 --- a/tests/test_ecovacs_api.py +++ b/tests/test_ecovacs_api.py @@ -1,18 +1,26 @@ +from re import compile + import requests_mock from nose.tools import * -import re - from sucks import * +def test_md5(): + assert_equal(EcoVacsAPI.md5("fnord"), "b15e400c8dbd6697f26385216d32a40f") + + +def test_encrypt(): + assert_equal(len(EcoVacsAPI.encrypt("fnord")), 172) + + def test_main_api_setup(): with requests_mock.mock() as m: - r1 = m.get(re.compile('user/login'), + r1 = m.get(compile('user/login'), text='{"time": 1511200804243, "data": {"accessToken": "7a375650b0b1efd780029284479c4e41", "uid": "2017102559f0ee63c588d", "username": null, "email": "william-ecovacs@pota.to", "country": "us"}, "code": "0000", "msg": "X"}') - r2 = m.get(re.compile('user/getAuthCode'), + r2 = m.get(compile('user/getAuthCode'), text='{"time": 1511200804607, "data": {"authCode": "5c28dac1ff580210e11292df57e87bef"}, "code": "0000", "msg": "X"}') - r3 = m.post(re.compile('user.do'), + r3 = m.post(compile('user.do'), text='{"todo": "result", "token": "jt5O7oDR3gPHdVKCeb8Czx8xw8mDXM6s", "result": "ok", "userId": "2017102559f0ee63c588d", "resource": "f8d99c4d"}') EcoVacsAPI("long_device_id", "account_id", "password_hash", 'us', 'na') assert_equals(r1.call_count, 1) @@ -25,7 +33,7 @@ def test_device_lookup(): with requests_mock.mock() as m: device_id = 'E0000001234567890123' - r = m.post(re.compile('user.do'), + r = m.post(compile('user.do'), text='{"todo": "result", "devices": [{"did": "%s", "class": "126", "nick": "bob"}], "result": "ok"}' % device_id) d = api.devices() assert_equals(r.call_count, 1) @@ -37,10 +45,10 @@ def test_device_lookup(): def make_api(): with requests_mock.mock() as m: - m.get(re.compile('user/login'), + m.get(compile('user/login'), text='{"time": 1511200804243, "data": {"accessToken": "0123456789abcdef0123456789abcdef", "uid": "20170101abcdefabcdefa", "username": null, "email": "username@example.com", "country": "us"}, "code": "0000", "msg": "X"}') - m.get(re.compile('user/getAuthCode'), + m.get(compile('user/getAuthCode'), text='{"time": 1511200804607, "data": {"authCode": "abcdef01234567890abcdef012345678"}, "code": "0000", "msg": "X"}') - m.post(re.compile('user.do'), + m.post(compile('user.do'), text='{"todo": "result", "token": "base64base64base64base64base64ba", "result": "ok", "userId": "20170101abcdefabcdefa", "resource": "abcdef12"}') return EcoVacsAPI("long_device_id", "account_id", "password_hash", 'us', 'na')