## Description
- Changes to codeEditor/index.ts to support AI integration.
- Added AIAssisted prop to code editor component.
- Added AIWindow interface to support AI popover in business edition.
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
>
#### How Has This Been Tested?
- [x] Manual
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Test-plan-implementation#speedbreaker-features-to-consider-for-every-change)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans/_edit#areas-of-interest)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] 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
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
## Description
This PR introduces autocompletion hints in the SQL editor
Fixes#17441
Media
<img width="600" alt="Screenshot 2023-05-07 at 14 31 11"
src="https://user-images.githubusercontent.com/46670083/236755394-87eef153-8e20-4032-a96c-3fbaa1bdb4a2.png">
<img width="600" alt="Screenshot 2023-05-07 at 14 31 48"
src="https://user-images.githubusercontent.com/46670083/236755411-6e63aaca-df6a-4b4e-91fe-cd5b1679d363.png">
## Type of change
> Please delete options that are not relevant.
- New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important
- Manual
- Jest
- Cypress
### Test Plan
https://github.com/appsmithorg/TestSmith/issues/2381
### Issues raised during DP testing
https://github.com/appsmithorg/appsmith/pull/22827#issuecomment-1536164809
## Checklist:
### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This PR fixes below flaky test in CI:
- /ServerSideTests/QueryPane/MySQL_Spec.ts
## Fixes #
- CI runs
## Type of change
- Script fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Local run
## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after all changes reviewed
## Description
- This PR fixed the issue with deleting queries from Postgress
Datasources in CI runs - which is flaky after this
[commit](9e06c9408a)
#### PR fixes following issue(s)
- CI runs
#### Type of change
- Script fix (non-breaking change which fixes an issue)
## Testing
#### How Has This Been Tested?
- [X] Cypress CI run
## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests are run
successfully
## Description
This includes
> Building a new image for airgapped instances
> Running ci-tests on airgapped image
> Running cypress tests selectively ignoring non supported features for
airgap like Templates, Custom JS lib and also alternating test
behaviours for some tests like tests using mock db, since it doesn't
work on airgap we have to create a ds. So this selective testing was
done using cypress-tags
> Having a new client build for airgapped images which bundles all the
assets.
> And changes in the workflow files to account for all the above.
With airgap, we can ignore certain tests and also need to account for
tests using mock datasources and such by creating new datasources
instead of mock datasources. Since those are blocked. So to perform a
selective testing we are using a plugin called `cypress-tags` and to
perform conditional testing when required we use the `AIRGAPPED` cypress
env. This PR introduces both and also modified the codebase to support
this new way of running cypress.
Since we can't trigger `/ok-to-test` on this because ci-test needs the
CYPRESS_EXCLUDE_TAGS and slash command doesn't dispatch from current
branch,
I manually triggered the `TBP` workflow to run ci-test on this branch.
And the new `TBP airgap` workflow to run ci-test on airgapped docker
image on this branch.
Here is the link to the run
https://github.com/appsmithorg/appsmith/actions/runs/4882041416Fixes#22007Fixes#22814
## Type of change
> Please delete options that are not relevant.
- New feature (non-breaking change which adds functionality)
- Chore (housekeeping or task changes that don't impact user perception)
## How Has This Been Tested?
- Manual
- Cypress
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] 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
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
**Fixed below flaky tests**
- Fork_Template_spec.js
- JSOnLoad2_Spec.ts
- Omnibar_spec.js
- RangeSlider_spec.ts
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
This PR is a follow up to #22847 to make CRUD templates work again.
TODO:
- [x] Wait for #22847 to get merged and then uncomment generate CRUD
tests
- [ ] Test all generate CRUD flows
---------
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
## Description
**Fixed below flaky tests**
- CommunityIssues_Spec.ts
- Autocomplete_JS_spec.ts
- Tab_spec.js
- API_Search_spec.js
- LeaveWorkspaceTest_spec.js
- Increased timeout in EnableGoogle_spec
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
TL;DR
This commit fixes unexpected stringified JSON in the following plugins
- REST API Plugin
- GraphQL plugin
The detailed analysis can be found in the comment section of the issue
itself (#22450)
Slack Conversations
-
[1](https://theappsmith.slack.com/archives/C0341RERY4R/p1681123872154409)
-
[2](https://theappsmith.slack.com/archives/CGBPVEJ5C/p1681726446635249)
> Add a TL;DR when description is extra long (helps content team)
Fixes#22450
Media
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Manual
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
When user clicks on a docs link, open the docs in a new tab instead of
the omnibar.
Fixes#22409
Media
> 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
## Type of change
- New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important
- Manual
- Jest
- Cypress
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This PR fixes the redis spec failures in CI. When HGet run on a Hash
set in Redis DB - the results can be in any order & hence spec is
failing in CI on multiple runs. Hence commenting the index check.
## Type of change
- Script update
## How Has This Been Tested?
- Cypress CI runs
## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all changes
## Description
- This PR includes tests for Redis datasource - basics tests with
querying in query page
## Type of change
- New script
## How Has This Been Tested?
- Cypress CI runs
## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all Cypress test
This PR reclaims the changes introduced in this
[PR](https://github.com/appsmithorg/appsmith/pull/19265) later which got
reverted by this
[PR](https://github.com/appsmithorg/appsmith/pull/20629)
## Description
- The PR removes the empty password validation check for PostgreSQL
while creating a new data source.
- The JUnit test case is added for the same. Implemented using a
separate PostgreSQL container with Trust Authentication enabled for the
Same.
- Please note for testing from UI perspective we have to create a user
with Trust auth enabled to validate the above changes.
Fixes#14003
Media
> 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
## Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- JUnit
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
> Remove debugger from preview mode
> Remove debugger in welcome tour
> Don't open debugger on `onpageload` action.
Fixes#22283#22281#22275
## Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important
- Manual
- Cypress
## Checklist:
### Dev activity
- [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
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This PR adds timeout for the EntityExpand() - to solve all the recent
issue seen with Expanding of Entity Explorer items - either after
refresh/page load/from view to edit mode navigations
## Type of change
- Script update (non-breaking change which fixes CI timeout issues with
EntityExplorer click)
## How Has This Been Tested?
- Cypress CI run
## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all Cypress test
## Description
- This PR fixes the Entity Explorer expand issue with the follow specs:
- /ThemingTests/Basic_spec.js
- /Button/Button_onClickAction_spec.js
- /Params/PassingParams_Spec.ts
## Type of change
- Script fixes
## How Has This Been Tested?
- Cypress local run
## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all changes
## Description
- This fixes the Firestore spec that fails sometimes in CI due to all
runs accessing the same cloud collection for validation
- BasicLint_spec
## Type of change
- Script fix (non-breaking change which fixes CI failure)
## How Has This Been Tested?
- Cypress local run
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
## Description
>
```
const isOnCanvas = matchBuilderPath(window.location.pathname);
if (isOnCanvas) {
dispatch(showDebuggerAction(!showDebugger));
}}
```
The condition check to verify if we are on canvas was removed as we are
opening debugger throughout all pages.
> Now debugger is accessible from all pages in Appsmith. (Earlier it was
not present in Datasources pages.)
Fixes#19567#21935#21934#21907#21223
Media
> [Video](https://www.loom.com/share/ff5eebb5e0a74e0bad6ead26050b5833)
## Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
- Manual
- Jest
- Cypress
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [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
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This fixes the Firestore spec that fails sometimes in CI due to all
runs accessing the same cloud collection for validation.
- This PR also adds comments to PR - if all cypress cases passed, right
now there is no comment
## Type of change
- Script update
## How Has This Been Tested?
- Cypress CI runs
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
## Description
- This PR includes tests for Elastic Search datasource - with querying &
usage of various fields in the query page
## Type of change
- New script
## How Has This Been Tested?
- Cypress local/CI runs
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
## Description
**Fixed below flaky tests**
- Command_Click_Navigation_spec.js
- List4_spec.js
- Select_spec.js
- PassingParams_Spec.ts
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This PR includes tests for Firestore ds - with querying & usage of
various fields in the query page
## Type of change
- New script
## How Has This Been Tested?
- Cypress CI runs
## Checklist:
### QA activity:
- [ ] Added Test Plan Approved label after reviewing all changes
## Description
- This PR introduces smoke & sanity tests into the CI pipeline, to
capture the failures early.
## Type of change
- CI Improvements
## How Has This Been Tested?
- Cypress runs on local PR workflows
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
---------
Co-authored-by: Saroj <saroj@appsmith.com>
## Description
Fix test case failing because of changes in
https://github.com/appsmithorg/appsmith/pull/21789
It caused failures in tests that had a move of action involved.
This change will update the test cases to open the entity collapsible
section after a move of action
> Fix failing test case
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Cypress
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
> This PR fixes the `redirectUrl` for the `/login` POST API in case of
an authentication failure.
Fixes#18670
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Manual
https://github.com/appsmithorg/TestSmith/issues/2203
## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] 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
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Anand Srinivasan <anand.a.srinivasan@outlook.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
- This PR includes tests for Arango ds - along with curl import &
querying & usage of various fields in the query page
## Type of change
- New script
## How Has This Been Tested?
- Cypress CI runs
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
---------
Co-authored-by: Saroj <43822041+sarojsarab@users.noreply.github.com>
## Description
1. Update husky, prettier and lint-staged then move them to
devDependencies
2. Configure husky and lint-staged
3. Impriove rules for the lint commands
4. Fix errors of eslint and prettier.
5. Remove redundant files
## Type of change
- Chore (housekeeping or task changes that don't impact user perception)
Co-authored-by: Valera Melnikov <melnikov.vv@greendatasoft.ru>
## Description
- This PR converts pagesize spec from js to to ts helpers.
- Moves the below spec from using catfact external api to TED internal
catfact api
JSOnLoad1_Spec.ts
- Connection_spec.js
## Type of change
- Script fix
## How Has This Been Tested?
- Cypress run - CI + local
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This PR fixes the below flaky tests:
- pagesize_spec.js
- List4_spec.js
- UpdateWorkspaceTests_spec.js
- CodeScanner_spec.js
- Entity_Explorer_Query_Datasource_spec.js
- DiscardChanges_spec.js
## Type of change
- Script fix
## How Has This Been Tested?
- Cypress run - local
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This PR includes tests for Airtable ds - along with connection &
querying & usage of various fields in the query page
## Type of change
- New script (non-breaking change which test functionality of Airtable
data-source)
## How Has This Been Tested?
- Cypress CI runs
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
Correction of eslint and printer errors/warnings. It is associated with [this activity](https://theappsmith.slack.com/archives/CGBPVEJ5C/p1678968535728579) in order to avoid conflicts with others.
1. Fix eslint warnings in unit tests. All unit tests are passed.
2. Fix prettier at cypress.
Co-authored-by: Valera Melnikov <melnikov.vv@greendatasoft.ru>
## Description
- This PR includes basic tests for connecting to a MsSQL ds & running
simple queries on it
## Type of change
- New script (non-breaking change which functional tests the MsSql ds)
## How Has This Been Tested?
- Cypress local & CI run
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
## Description
This PR upgrades Prettier to v2 + enforces TypeScript’s [`import
type`](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-8.html#type-only-imports-and-export)
syntax where applicable. It’s submitted as a separate PR so we can merge
it easily.
As a part of this PR, we reformat the codebase heavily:
- add `import type` everywhere where it’s required, and
- re-format the code to account for Prettier 2’s breaking changes:
https://prettier.io/blog/2020/03/21/2.0.0.html#breaking-changes
This PR is submitted against `release` to make sure all new code by team
members will adhere to new formatting standards, and we’ll have fewer
conflicts when merging `bundle-optimizations` into `release`. (I’ll
merge `release` back into `bundle-optimizations` once this PR is
merged.)
### Why is this needed?
This PR is needed because, for the Lodash optimization from
7cbb12af88,
we need to use `import type`. Otherwise, `babel-plugin-lodash` complains
that `LoDashStatic` is not a lodash function.
However, just using `import type` in the current codebase will give you
this:
<img width="962" alt="Screenshot 2023-03-08 at 17 45 59"
src="https://user-images.githubusercontent.com/2953267/223775744-407afa0c-e8b9-44a1-90f9-b879348da57f.png">
That’s because Prettier 1 can’t parse `import type` at all. To parse it,
we need to upgrade to Prettier 2.
### Why enforce `import type`?
Apart from just enabling `import type` support, this PR enforces
specifying `import type` everywhere it’s needed. (Developers will get
immediate TypeScript and ESLint errors when they forget to do so.)
I’m doing this because I believe `import type` improves DX and makes
refactorings easier.
Let’s say you had a few imports like below. Can you tell which of these
imports will increase the bundle size? (Tip: it’s not all of them!)
```ts
// app/client/src/workers/Linting/utils.ts
import { Position } from "codemirror";
import { LintError as JSHintError, LintOptions } from "jshint";
import { get, isEmpty, isNumber, keys, last, set } from "lodash";
```
It’s pretty hard, right?
What about now?
```ts
// app/client/src/workers/Linting/utils.ts
import type { Position } from "codemirror";
import type { LintError as JSHintError, LintOptions } from "jshint";
import { get, isEmpty, isNumber, keys, last, set } from "lodash";
```
Now, it’s clear that only `lodash` will be bundled.
This helps developers to see which imports are problematic, but it
_also_ helps with refactorings. Now, if you want to see where
`codemirror` is bundled, you can just grep for `import \{.*\} from
"codemirror"` – and you won’t get any type-only imports.
This also helps (some) bundlers. Upon transpiling, TypeScript erases
type-only imports completely. In some environment (not ours), this makes
the bundle smaller, as the bundler doesn’t need to bundle type-only
imports anymore.
## Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## How Has This Been Tested?
This was tested to not break the build.
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] 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
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Satish Gandham <hello@satishgandham.com>
Co-authored-by: Satish Gandham <satish.iitg@gmail.com>
## Description
Adding Cypress.env.json to gitIgnore
## Type of change
- Chore
## How Has This Been Tested?
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [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
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
This PR fixes issue of file picker not showing up in firefox, The issue
occurred because the function being triggered on script load
`gapiLoaded`, was defined in a script that would load after `gapi`. Even
though `gapi` is being loaded asynchronously, in case of firefox when
using with windows OS, it would load before the script which had onload
function defined. This PR fixes the issue by defining onload function in
a script that loads before `gapi`
> Add a TL;DR when description is extra long (helps content team)
Fixes#21033
> if no issue exists, please create an issue and ask the maintainers
about this first
Media
> 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
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Manual
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [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
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [x] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
- This PR includes cypress test for validating the Authenticated Graph
QL flow.
## Type of change
- New script
## How Has This Been Tested?
- Cypress CI run
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
## Description
- Modified mock api url and refactored specs accordingly
**Flaky fixes below:**
- Listv2_BasicChildWidgetInteraction_spec.js
- QueryPane/Mongo_Spec.js
- CreateNewApp_spec.js
- Enabling S3_1_spec - upload case back
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
- Automated TED OAuth 2.0 with authorization code
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
**Fixed below flaky tests**
- DeleteWorkspace_spec.js
- Listv2_BasicChildWidgetInteraction_spec.js
- JSOnLoad_cyclic_dependency_errors_spec.js
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
This PR includes following changes:
- In case of limiting google sheet access project, when user selects specific sheets as an option, they should be shown file picker UI once the authorisation is complete, In this file picker UI, users can select the google sheet files that they want to use with appsmith application and allow access to only those files.
- This PR contains the changes for file picker UI and updating datasource auth state based on the files selected by user.
TL;DR
Steps to test this PR:
- Create Google Sheet datasource
- In the datasource config form, select specific sheets as an option from the scope dropdown.
- Click on save and authorise
- This will take you to google oauth process
<img width="467" alt="Screenshot 2023-02-20 at 1 24 24 PM" src="https://user-images.githubusercontent.com/30018882/220045493-57b0ca6c-3f08-4963-af55-d603cf79bc43.png">
- Select the google account
- This will take you to google oauth2 consent screen
<img width="451" alt="Screenshot 2023-02-20 at 1 24 55 PM" src="https://user-images.githubusercontent.com/30018882/220045641-9f70dd29-6664-489a-b77b-df65445491df.png">
- Click on allow for all requested permissions
- This will take you back to appsmith's datasource config page in view mode and load the file picker UI
<img width="425" alt="Screenshot 2023-02-20 at 1 25 47 PM" src="https://user-images.githubusercontent.com/30018882/220045828-8b3e3e46-4ddc-4e30-b2f8-f12865395817.png">
- Select the files that you want to share with appsmith app
- Click on select
- You should see the new query button in enabled state, as datasource authorisation is complete
<img width="800" alt="Screenshot 2023-02-20 at 1 27 28 PM" src="https://user-images.githubusercontent.com/30018882/220046131-6ce99a85-cddc-4529-ae45-f9833aefd71b.png">
- In case you select cancel on google oauth2 consent screen, you should error message on datasource config page with new query button being disabled
<img width="810" alt="Screenshot 2023-02-20 at 1 28 49 PM" src="https://user-images.githubusercontent.com/30018882/220046385-6b8d636c-b517-44c3-a596-b52bc0084b94.png">
- In case you do give all the permissions but do not select any files in google file picker, then also you should see error message on datasource config page with new query button disabled.
Fixes#20163, #20290, #20160, #20162
Media
> 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
## Type of change
> Please delete options that are not relevant.
- New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
- Manual
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [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
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
- [x] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or manual QA
- [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
- Merged Table.ts & TableV2.ts into single page Table.ts and refactored
scripts accordingly
Flaky fixes below:
- Listv2_Button_Widget_spec.ts
- CreateNewApp_spec.js
- GuidedTour_spec.js
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
**Fixed below flaky tests**
- DeleteWorkspace_spec.js
- Guided Tour.js
- GraphQL_spec.ts
- CreateNewApp_spec.js
- PgAdmin spec
- DS - CreateQuery methods refactored
- Mock DB creation refactored
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
Core features of Auto Layout and mobile responsiveness, hidden under a feature flag.
> Add a TL;DR when description is extra long (helps content team)
Media
> 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
## Type of change
> Please delete options that are not relevant.
- New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
> Manual regression and sanity tests for all fixed canvas functionality.
- Manual
- Jest
- Cypress
## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] 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
- [ ] 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
- [x] PR is being merged under a feature flag
---------
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Arsalan <arsalanyaldram0211@outlook.com>
Co-authored-by: Aswath K <aswath.sana@gmail.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
Since we have introduced the error handling framework, each plugin
produces error messages specific to the plugin execution exception. This
Pr is just about standardising these error messages.
In this PR we are handling only five plugins as mentioned:
- Rest API
- MongoDB
- Postgres
- MySql
- Google Sheets
> Modifying error messages for five plugins Rest API, Mongo, Postgres,
MySQL, and Google Sheets for improving consistency.
In addition it also takes care of the following issues
- If the downstream error message is available response.body will hold
that value and it will hold the appsmith error message otherwise
- Don't override the actual http status code with Appsmith error code in
case of RestAPI and GraphQL plugins
Fixes#20438#21022
## Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## How Has This Been Tested?
- Manual
## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
---------
Co-authored-by: subrata <subrata@appsmith.com>
Co-authored-by: ChandanBalajiBP <104058110+ChandanBalajiBP@users.noreply.github.com>
## Description
**Fixed below flaky tests**
- Chart_Widget_Loading_spec.js
- Listv2_BasicChildWidgetInteraction_spec.js
- Modal_focus_spec.js
- DeleteWorkspace_spec.js
- GraphQL to TED
- Echo mock api to TED
- Autocomplete_JS_spec
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
fix: JSObjects | Sync methods | Not run consistently when Page is cloned
We used to not wait for all the calls to fetch the entities to run
evaluations however we changed this with some performance improvements.
This seems to have been missed for when we clone a page.
Fixes#20814
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Manual
- Cypress
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
API content type refactor flow. More information can be found
[here](https://www.notion.so/appsmith/API-Content-type-Header-Refactor-07f2f944e13f43148210c2461cf3fcda?d=339958cf1d374fefadfa437f86d95627)
Fixes#18473
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
### Test Plan
> Add Testsmith test cases links that relate to this PR
### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
## Checklist:
### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: PiyushPushkar02 <118709669+PiyushPushkar02@users.noreply.github.com>
Co-authored-by: Sumit Kumar <sumit@appsmith.com>
Co-authored-by: Aishwarya-U-R <91450662+Aishwarya-U-R@users.noreply.github.com>