Skip to content

Commit 1251918

Browse files
committed
test: modernize
1 parent 3bc5adf commit 1251918

File tree

1 file changed

+28
-64
lines changed

1 file changed

+28
-64
lines changed

spec/ParseRole.spec.js

Lines changed: 28 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -602,37 +602,26 @@ describe('Parse Role testing', () => {
602602
});
603603
});
604604

605-
it('should trigger afterSave hook when using Parse.Role', done => {
606-
let afterSaveCalled = false;
607-
608-
Parse.Cloud.afterSave(Parse.Role, req => {
609-
afterSaveCalled = true;
610-
expect(req.object).toBeDefined();
611-
expect(req.object.get('name')).toBe('AnotherTestRole');
605+
it('should trigger afterSave hook when using Parse.Role', async () => {
606+
const afterSavePromise = new Promise(resolve => {
607+
Parse.Cloud.afterSave(Parse.Role, req => {
608+
expect(req.object).toBeDefined();
609+
expect(req.object.get('name')).toBe('AnotherTestRole');
610+
resolve();
611+
});
612612
});
613613

614614
const acl = new Parse.ACL();
615615
acl.setPublicReadAccess(true);
616616
const role = new Parse.Role('AnotherTestRole', acl);
617617

618-
role
619-
.save({}, { useMasterKey: true })
620-
.then(savedRole => {
621-
expect(savedRole.id).toBeDefined();
622-
// Give the afterSave hook some time to execute
623-
return new Promise(resolve => setTimeout(resolve, 100));
624-
})
625-
.then(() => {
626-
expect(afterSaveCalled).toBe(true);
627-
done();
628-
})
629-
.catch(err => {
630-
fail(`Should not have failed: ${err.message}`);
631-
done();
632-
});
618+
const savedRole = await role.save({}, { useMasterKey: true });
619+
expect(savedRole.id).toBeDefined();
620+
621+
await afterSavePromise;
633622
});
634623

635-
it('should trigger beforeSave hook and allow modifying role in beforeSave', done => {
624+
it('should trigger beforeSave hook and allow modifying role in beforeSave', async () => {
636625
Parse.Cloud.beforeSave(Parse.Role, req => {
637626
// Add a custom field in beforeSave
638627
req.object.set('customField', 'addedInBeforeSave');
@@ -642,20 +631,12 @@ describe('Parse Role testing', () => {
642631
acl.setPublicReadAccess(true);
643632
const role = new Parse.Role('ModifiedRole', acl);
644633

645-
role
646-
.save({}, { useMasterKey: true })
647-
.then(savedRole => {
648-
expect(savedRole.id).toBeDefined();
649-
expect(savedRole.get('customField')).toBe('addedInBeforeSave');
650-
done();
651-
})
652-
.catch(err => {
653-
fail(`Should not have failed: ${err.message}`);
654-
done();
655-
});
634+
const savedRole = await role.save({}, { useMasterKey: true });
635+
expect(savedRole.id).toBeDefined();
636+
expect(savedRole.get('customField')).toBe('addedInBeforeSave');
656637
});
657638

658-
it('should trigger beforeSave hook using Parse.Role', done => {
639+
it('should trigger beforeSave hook using Parse.Role', async () => {
659640
let beforeSaveCalled = false;
660641

661642
Parse.Cloud.beforeSave(Parse.Role, req => {
@@ -668,20 +649,12 @@ describe('Parse Role testing', () => {
668649
acl.setPublicReadAccess(true);
669650
const role = new Parse.Role('BeforeSaveWithClassRef', acl);
670651

671-
role
672-
.save({}, { useMasterKey: true })
673-
.then(savedRole => {
674-
expect(savedRole.id).toBeDefined();
675-
expect(beforeSaveCalled).toBe(true);
676-
done();
677-
})
678-
.catch(err => {
679-
fail(`Should not have failed: ${err.message}`);
680-
done();
681-
});
652+
const savedRole = await role.save({}, { useMasterKey: true });
653+
expect(savedRole.id).toBeDefined();
654+
expect(beforeSaveCalled).toBe(true);
682655
});
683656

684-
it('should allow modifying role name in beforeSave hook', done => {
657+
it('should allow modifying role name in beforeSave hook', async () => {
685658
Parse.Cloud.beforeSave(Parse.Role, req => {
686659
// Modify the role name in beforeSave
687660
if (req.object.get('name') === 'OriginalName') {
@@ -693,22 +666,13 @@ describe('Parse Role testing', () => {
693666
acl.setPublicReadAccess(true);
694667
const role = new Parse.Role('OriginalName', acl);
695668

696-
role
697-
.save({}, { useMasterKey: true })
698-
.then(savedRole => {
699-
expect(savedRole.id).toBeDefined();
700-
expect(savedRole.get('name')).toBe('ModifiedName');
701-
// Verify the name was actually saved to the database
702-
const query = new Parse.Query(Parse.Role);
703-
return query.get(savedRole.id, { useMasterKey: true });
704-
})
705-
.then(fetchedRole => {
706-
expect(fetchedRole.get('name')).toBe('ModifiedName');
707-
done();
708-
})
709-
.catch(err => {
710-
fail(`Should not have failed: ${err.message}`);
711-
done();
712-
});
669+
const savedRole = await role.save({}, { useMasterKey: true });
670+
expect(savedRole.id).toBeDefined();
671+
expect(savedRole.get('name')).toBe('ModifiedName');
672+
673+
// Verify the name was actually saved to the database
674+
const query = new Parse.Query(Parse.Role);
675+
const fetchedRole = await query.get(savedRole.id, { useMasterKey: true });
676+
expect(fetchedRole.get('name')).toBe('ModifiedName');
713677
});
714678
});

0 commit comments

Comments
 (0)