PromucFlow_constructor/app/client/cypress
arunvjn ee37b5272a fix: Race condition in JS object mutation (#28083)
Fixes race condition in JS Object mutation where evaluation overrides
the variables state.

Root Cause:
Execution context is shared between every evaluation request and trigger
execution request. A trigger execution request could be paused when an
asynchronous task is awaited. In the mean time, worker might pick up the
task to perform and evaluation. Evaluation would end up replacing the
entities in the execution context, there by resetting the actions
performed by the trigger execution before it was paused.

What the fix does?
We are now caching the JS object for reuse which means that every
execution/evaluation request reuses the same JS Object as long the JS
Object isn't modified by a user action.

Fixes #27978
>
>

> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>

- Bug fix (non-breaking change which fixes an issue)
>
>

>

- [x] Manual
- [x] Jest
- [x] Cypress
>
>

> Add Testsmith test cases links that relate to this PR
>
>

> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag

- [x] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [x] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [x] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [x] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed

(cherry picked from commit 1afd223e10)
2023-10-16 13:35:45 +05:30
..
e2e fix: Race condition in JS object mutation (#28083) 2023-10-16 13:35:45 +05:30
fixtures test: added tests fo multiTreeSelect Regression tests (#27826) 2023-10-07 20:12:33 +05:30
locators feat: JSON form widget one click binding integration (#25873) 2023-10-03 13:40:51 +05:30
manual_TestSuite test: Cypress - fix for selected gsheet (#25940) 2023-08-02 18:58:04 +05:30
patches
plugins chore: get browser logs from failed cypress tests (#27724) 2023-10-05 14:42:30 +05:30
scripts chore:add eslint rules (#27878) 2023-10-09 16:54:06 +03:00
snapshots test: Cypress - chart widget cases (#27837) 2023-10-06 11:16:06 +05:30
support chore:add eslint rules (#27878) 2023-10-09 16:54:06 +03:00
.eslintrc.json chore:add eslint rules (#27878) 2023-10-09 16:54:06 +03:00
apply-patches.js chore: move local dependency to packages (#23395) 2023-05-22 15:55:46 +03:00
index.ts test: Cypress | Cy 12 upgrade + Flaky fixes (#23852) 2023-06-15 18:51:11 +05:30
init-mssql-dump-for-test.sql
init-mysql-dump-for-test.sql feat: [epic] appsmith design system version 2 deduplication (#22030) 2023-05-20 00:07:06 +05:30
init-pg-dump-for-test.sql
limited-tests.txt test: Cypess | Oracle DS validations added (Part 5) + CI Stabilize (#27440) 2023-09-20 00:56:11 +05:30
setup-test-ci.sh
setup-test.sh
test.sh
tsconfig.json chore: add strict-boolean-expressions rule (#27852) 2023-10-06 16:05:32 +03:00
xataadd.sh
xatadel.sh