Good job porting the app from the ancient version of JQuery to the latest build :D
The patch in general looks good, and the patches-bot says all tests pass.
The only thing that we would like to point out is this piece of code:
/* jQuery has removed selector property in version 3.x* To allow JS test cases to run, the below function is* used to set the selector property*/
function setPropAndSelector(selector, propName, propVal) { let tmpObj = $(selector); tmpObj['selector'] = selector; tmpObj.prop(propName,propVal); return tmpObj;
}
As tests are also part of the code we believe that when there is a change that affect testing we should change the tests to work accordingly. So our suggestion is, instead of creating this function, why don’t we use a CSS selector in the tests to do the clicking or even use the HTML5 tag data-test-selector? This way the tests will also be coherent with the upgrade from JQuery 1 to 3
Please find the updated patch for upgrading the jQuery version to 3.x. The patch is only for pgAdmin4 code changes replacing old deprecated functions with new replacement.
We need to look into external libraries used for any vulnerabilities.
Request you to kindly review.
Thanks and Regards,
Aditya Toshniwal
Software Engineer | EnterpriseDB Software Solutions | Pune