it('find', function(done) { const t = new TestObject(); t.set('foo', 'bar'); t.save().then(function() { const query = new Parse.Query(TestObject); query.equalTo('foo', 'bar'); query.find().then(function(results) { equal(results.length, 1); done(); }); }); });
it('time equality', function (done) { makeThreeTimeObjects().then(function (list) { const query = new Parse.Query(TestObject); query.equalTo('time', list[1].get('time')); query.find().then(function (results) { equal(results.length, 1); equal(results[0].get('name'), 'item2'); done(); }); }); });
function userForSessionToken(sessionToken) { var q = new _node.default.Query('_Session'); q.equalTo('sessionToken', sessionToken); return q.first({ useMasterKey: true }).then(function (session) { if (!session) { return Promise.reject('No session found for session token'); } return session.get('user'); }); }
new Parse.Query(Parse.Role) .equalTo('users', this.user) .each(result => results.push(result.toJSON()), { useMasterKey: true })
it('should not be able to get user PII via API with Find', done => { new Parse.Query(Parse.User) .equalTo('objectId', user.id) .find() .then(fetchedUser => { fetchedUser = fetchedUser[0]; expect(fetchedUser.get('email')).toBe(undefined); expect(fetchedUser.get('zip')).toBe(undefined); expect(fetchedUser.get('ssn')).toBe(undefined); done(); }) .catch(done.fail); });
it('distinct updatedAt', async () => { const object1 = new TestObject({ updatedAt_test: true }); await object1.save(); const object2 = new TestObject(); await object2.save(); object2.set('updatedAt_test', true); await object2.save(); const query = new Parse.Query(TestObject); query.equalTo('updatedAt_test', true); const results = await query.distinct('updatedAt'); expect(results.length).toBe(2); });
it('first with error', function (done) { const query = new Parse.Query(BoxedNumber); query.equalTo('$foo', 'bar'); query .first() .then(done.fail) .catch((e) => expect(e.code).toBe(Parse.Error.INVALID_KEY_NAME)) .then(done); });
it('first with two results', function (done) { Parse.Object.saveAll([ new TestObject({ foo: 'bar' }), new TestObject({ foo: 'bar' }), ]).then(function () { const query = new Parse.Query(TestObject); query.equalTo('foo', 'bar'); query.first().then(function (result) { equal(result.get('foo'), 'bar'); done(); }); }); });
it('nested equalTo string with single quote', async () => { const obj = new TestObject({ nested: { foo: "single'quote" } }); await obj.save(); const query = new Parse.Query(TestObject); query.equalTo('nested.foo', "single'quote"); const result = await query.get(obj.id); equal(result.get('nested').foo, "single'quote"); });
it('basic query', function (done) { const baz = new TestObject({ foo: 'baz' }); const qux = new TestObject({ foo: 'qux' }); Parse.Object.saveAll([baz, qux]).then(function () { const query = new Parse.Query(TestObject); query.equalTo('foo', 'baz'); query.find().then(function (results) { equal(results.length, 1); equal(results[0].get('foo'), 'baz'); done(); }); }); });
it('first no result', function (done) { Parse.Object.saveAll([new TestObject({ foo: 'bar' })]).then(function () { const query = new Parse.Query(TestObject); query.equalTo('foo', 'baz'); query.first().then(function (result) { equal(result, undefined); done(); }); }); });
it('equalTo false queries', (done) => { const obj1 = new TestObject({ field: false }); const obj2 = new TestObject({ field: true }); Parse.Object.saveAll([obj1, obj2]) .then(() => { const query = new Parse.Query(TestObject); query.equalTo('field', false); return query.find(); }) .then((results) => { equal(results.length, 1); done(); }); });
it('distinct createdAt', async () => { const object1 = new TestObject({ createdAt_test: true }); await object1.save(); const object2 = new TestObject({ createdAt_test: true }); await object2.save(); const query = new Parse.Query(TestObject); query.equalTo('createdAt_test', true); const results = await query.distinct('createdAt'); expect(results.length).toBe(2); });
it('first', function (done) { Parse.Object.saveAll([new TestObject({ foo: 'bar' })]).then(function () { const query = new Parse.Query(TestObject); query.equalTo('foo', 'bar'); query.first().then(function (result) { equal(result.get('foo'), 'bar'); done(); }); }); });
it('find with error', function (done) { const query = new Parse.Query(BoxedNumber); query.equalTo('$foo', 'bar'); query .find() .then(done.fail) .catch((error) => expect(error.code).toBe(Parse.Error.INVALID_KEY_NAME)) .then(done); });