Initial release, parse-server, 2.0.0
This commit is contained in:
95
spec/RestQuery.spec.js
Normal file
95
spec/RestQuery.spec.js
Normal file
@@ -0,0 +1,95 @@
|
||||
// These tests check the "find" functionality of the REST API.
|
||||
var auth = require('../Auth');
|
||||
var cache = require('../cache');
|
||||
var Config = require('../Config');
|
||||
var rest = require('../rest');
|
||||
|
||||
var config = new Config('test');
|
||||
var nobody = auth.nobody(config);
|
||||
|
||||
describe('rest query', () => {
|
||||
it('basic query', (done) => {
|
||||
rest.create(config, nobody, 'TestObject', {}).then(() => {
|
||||
return rest.find(config, nobody, 'TestObject', {});
|
||||
}).then((response) => {
|
||||
expect(response.results.length).toEqual(1);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('query with limit', (done) => {
|
||||
rest.create(config, nobody, 'TestObject', {foo: 'baz'}
|
||||
).then(() => {
|
||||
return rest.create(config, nobody,
|
||||
'TestObject', {foo: 'qux'});
|
||||
}).then(() => {
|
||||
return rest.find(config, nobody,
|
||||
'TestObject', {}, {limit: 1});
|
||||
}).then((response) => {
|
||||
expect(response.results.length).toEqual(1);
|
||||
expect(response.results[0].foo).toBeTruthy();
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
// Created to test a scenario in AnyPic
|
||||
it('query with include', (done) => {
|
||||
var photo = {
|
||||
foo: 'bar'
|
||||
};
|
||||
var user = {
|
||||
username: 'aUsername',
|
||||
password: 'aPassword'
|
||||
};
|
||||
var activity = {
|
||||
type: 'comment',
|
||||
photo: {
|
||||
__type: 'Pointer',
|
||||
className: 'TestPhoto',
|
||||
objectId: ''
|
||||
},
|
||||
fromUser: {
|
||||
__type: 'Pointer',
|
||||
className: '_User',
|
||||
objectId: ''
|
||||
}
|
||||
};
|
||||
var queryWhere = {
|
||||
photo: {
|
||||
__type: 'Pointer',
|
||||
className: 'TestPhoto',
|
||||
objectId: ''
|
||||
},
|
||||
type: 'comment'
|
||||
};
|
||||
var queryOptions = {
|
||||
include: 'fromUser',
|
||||
order: 'createdAt',
|
||||
limit: 30
|
||||
};
|
||||
rest.create(config, nobody, 'TestPhoto', photo
|
||||
).then((p) => {
|
||||
photo = p;
|
||||
return rest.create(config, nobody, '_User', user);
|
||||
}).then((u) => {
|
||||
user = u.response;
|
||||
activity.photo.objectId = photo.objectId;
|
||||
activity.fromUser.objectId = user.objectId;
|
||||
return rest.create(config, nobody,
|
||||
'TestActivity', activity);
|
||||
}).then(() => {
|
||||
queryWhere.photo.objectId = photo.objectId;
|
||||
return rest.find(config, nobody,
|
||||
'TestActivity', queryWhere, queryOptions);
|
||||
}).then((response) => {
|
||||
var results = response.results;
|
||||
expect(results.length).toEqual(1);
|
||||
expect(typeof results[0].objectId).toEqual('string');
|
||||
expect(typeof results[0].photo).toEqual('object');
|
||||
expect(typeof results[0].fromUser).toEqual('object');
|
||||
expect(typeof results[0].fromUser.username).toEqual('string');
|
||||
done();
|
||||
}).catch((error) => { console.log(error); });
|
||||
});
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user