mirror of
https://github.com/skydiver/ewelink-api.git
synced 2025-12-24 06:28:30 +01:00
Release v1.3.0 (#8)
* helper method to login into ewelink if no auth credentials found * return websocket reponse as JSON * created function to get raw consumption data * created function to parse raw consumption data and return daily usage * renamed property * created function to get current month power usage * created function to get raw power usage * added new test cases * catch websocket connection errors * power usage enhancements * added new test case * removed unused code * updated credentials file * version bump * updated dependencies * tests reorganized
This commit is contained in:
@@ -1,5 +1,12 @@
|
||||
const delay = require('delay');
|
||||
|
||||
const ewelink = require('../main');
|
||||
const { email, password } = require('./_setup/credentials.json');
|
||||
|
||||
const {
|
||||
email,
|
||||
password,
|
||||
deviceIdWithoutPower,
|
||||
} = require('./_setup/credentials.json');
|
||||
const { loginExpectations } = require('./_setup/expectations');
|
||||
|
||||
describe('valid credentials, invalid device', () => {
|
||||
@@ -28,6 +35,31 @@ describe('valid credentials, invalid device', () => {
|
||||
expect(powerState.msg).toBe('Device does not exist');
|
||||
expect(powerState.error).toBe(500);
|
||||
});
|
||||
|
||||
test('raw power usage should fail', async () => {
|
||||
jest.setTimeout(30000);
|
||||
const conn = new ewelink({ email, password });
|
||||
const powerUsage = await conn.getDeviceRawPowerUsage('invalid deviceid');
|
||||
expect(typeof powerUsage).toBe('object');
|
||||
expect(powerUsage.error).toBe('No power usage data found.');
|
||||
});
|
||||
|
||||
test('current month power usage should fail', async () => {
|
||||
jest.setTimeout(30000);
|
||||
const conn = new ewelink({ email, password });
|
||||
const powerUsage = await conn.getDevicePowerUsage('invalid deviceid');
|
||||
expect(typeof powerUsage).toBe('object');
|
||||
expect(powerUsage.error).toBe('No power usage data found.');
|
||||
});
|
||||
|
||||
test('raw power on device without electricity monitor should fail', async () => {
|
||||
jest.setTimeout(30000);
|
||||
await delay(1000);
|
||||
const conn = new ewelink({ email, password });
|
||||
const powerUsage = await conn.getDeviceRawPowerUsage(deviceIdWithoutPower);
|
||||
expect(typeof powerUsage).toBe('object');
|
||||
expect(powerUsage.error).toBe('No power usage data found.');
|
||||
});
|
||||
});
|
||||
|
||||
describe('valid credentials, wrong region', () => {
|
||||
|
||||
Reference in New Issue
Block a user