it('should be able to get PII via API with object using master key', done => { return Parse.User.logOut().then(() => { const userObj = new (Parse.Object.extend(Parse.User))(); userObj.id = user.id; userObj .fetch({ useMasterKey: true }) .then(fetchedUser => expect(fetchedUser.get('email')).toBe(EMAIL)) .then(done) .catch(done.fail); }); });
it('should not run beforeLogin on sign up', async done => { let hit = 0; Parse.Cloud.beforeLogin(req => { hit++; expect(req.object.get('username')).toEqual('tupac'); }); const user = await Parse.User.signUp('tupac', 'shakur'); expect(user).toBeDefined(); expect(hit).toBe(0); done(); });
it('should be able to get own PII via API with Find', done => { new Parse.Query(Parse.User).first().then(fetchedUser => { expect(fetchedUser.get('email')).toBe(EMAIL); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }); });
it('succeed in logging in', function(done) { createTestUser().then(async function(u) { expect(typeof u.id).toEqual('string'); const user = await Parse.User.logIn('test', 'moon-y'); expect(typeof user.id).toEqual('string'); expect(user.get('password')).toBeUndefined(); expect(user.getSessionToken()).not.toBeUndefined(); await Parse.User.logOut(); done(); }, fail); });
it('should be able to get own PII via API with Get', done => { new Parse.Query(Parse.User).get(user.id).then(fetchedUser => { expect(fetchedUser.get('email')).toBe(EMAIL); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }); });
it('should get PII via API with Find using master key', done => { return Parse.User.logOut().then(() => new Parse.Query(Parse.User) .first({ useMasterKey: true }) .then(fetchedUser => { expect(fetchedUser.get('email')).toBe(EMAIL); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }) ); });
it('should get PII via API with Get using master key', done => { Parse.User.logOut().then(() => new Parse.Query(Parse.User) .get(user.id, { useMasterKey: true }) .then(fetchedUser => { expect(fetchedUser.get('email')).toBe(EMAIL); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }) ); });
it('should not run afterLogin on sign up', async done => { let hit = 0; Parse.Cloud.afterLogin(req => { hit++; expect(req.object.get('username')).toEqual('testuser'); }); const user = await Parse.User.signUp('testuser', 'p@ssword'); expect(user).toBeDefined(); expect(hit).toBe(0); done(); });
it('should not get PII via API with Get', done => { Parse.User.logOut().then(() => new Parse.Query(Parse.User).get(user.id).then(fetchedUser => { expect(fetchedUser.get('email')).toBe(undefined); expect(fetchedUser.get('zip')).toBe(undefined); expect(fetchedUser.get('ssn')).toBe(undefined); done(); }) ); });
it('should not get PII via API with Get', done => { return Parse.User.logOut().then(() => new Parse.Query(Parse.User).get(user.id).then(fetchedUser => { expect(fetchedUser.get('email')).toBe(undefined); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }) ); });
it('should not get PII via API with Find', done => { Parse.User.logOut().then(() => new Parse.Query(Parse.User).first().then(fetchedUser => { expect(fetchedUser.get('email')).toBe(undefined); expect(fetchedUser.get('zip')).toBe(undefined); expect(fetchedUser.get('ssn')).toBe(undefined); done(); }) ); });
it('should be able to get own PII via API with Find', done => { new Parse.Query(Parse.User).first().then(fetchedUser => { expect(fetchedUser.get('email')).toBe(EMAIL); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }); });
it('should be able to get own PII via API with Get', done => { new Parse.Query(Parse.User).get(user.id).then(fetchedUser => { expect(fetchedUser.get('email')).toBe(EMAIL); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }); });
it('should get PII via API with Get using master key', done => { return Parse.User.logOut().then(() => new Parse.Query(Parse.User) .get(user.id, { useMasterKey: true }) .then(fetchedUser => { expect(fetchedUser.get('email')).toBe(EMAIL); expect(fetchedUser.get('zip')).toBe(ZIP); expect(fetchedUser.get('ssn')).toBe(SSN); done(); }) ); });
it('should not get PII via API with Get', done => { Parse.User.logOut().then(() => new Parse.Query(Parse.User).get(user.id).then(fetchedUser => { expect(fetchedUser.get('email')).toBe(undefined); expect(fetchedUser.get('zip')).toBe(undefined); expect(fetchedUser.get('ssn')).toBe(undefined); done(); }) ); });