Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const { Parse } = global;
- const { Sensor: SensorCloudFunctions } = require('../cloud/functions');
- let testUser;
- const loginUser = async () => {
- testUser = await Parse.User.logIn('test', 'test');
- };
- const logOutUser = async () => {
- Parse.User.logOut({ sessionToken: testUser.getSessionToken() });
- };
- beforeAll(() => loginUser());
- afterAll(() => logOutUser());
- describe('Sensors Cloud Functions', () => {
- test('findSensorsByDevices should return sensors without intersection', async () => {
- const Device = Parse.Object.extend('Device');
- const device = new Device();
- device.set('uuid', 'test');
- const Sensor = Parse.Object.extend('Sensor');
- const sensor1 = new Sensor();
- const sensor2 = new Sensor();
- const sensor3 = new Sensor();
- sensor1.set('device', device);
- sensor1.set('name', 'sensor1');
- sensor2.set('device', device);
- sensor2.set('name', 'sensor2');
- sensor3.set('device', device);
- sensor3.set('name', 'sensor3');
- try {
- await Promise.all([
- device.save(null, { sessionToken: testUser.getSessionToken() }),
- sensor1.save(null, { sessionToken: testUser.getSessionToken() }),
- sensor2.save(null, { sessionToken: testUser.getSessionToken() }),
- sensor3.save(null, { sessionToken: testUser.getSessionToken() }),
- ]);
- const arrSensors = [sensor1, sensor2, sensor3];
- const params = {
- devices: [{ objectId: device._getId() }],
- };
- const { results } = await SensorCloudFunctions.findSensorsByDevices({
- user: testUser,
- params,
- });
- expect(results).toHaveLength(3);
- expect(results.map((s) => s.objectId)).toEqual(arrSensors.map((s) => s._getId()));
- } finally {
- await Promise.all([
- device.destroy({ sessionToken: testUser.getSessionToken() }),
- sensor1.destroy({ sessionToken: testUser.getSessionToken() }),
- sensor2.destroy({ sessionToken: testUser.getSessionToken() }),
- sensor3.destroy({ sessionToken: testUser.getSessionToken() }),
- ]);
- }
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement