## Description
> Added excludeForAirgap tgs
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
> running tbp
> /ok-to-test tags="@tag.excludeForAirgap"
#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress
>
>
## 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/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] 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
- [ ] 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
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Test Enhancements**
- Improved test descriptions and added relevant tags for better
categorization and filtering across various test suites.
- Consolidated test logic and descriptions for clarity and coherence in
test suites.
- **Bug Fixes**
- Updated test cases to reflect accurate scenarios for bugs and feature
testing.
- Adjusted test sequences and assertions for enhanced reliability and
coverage.
- **Refactor**
- Restructured test suites for a more logical flow and clearer
objectives.
- Enhanced test setup steps and assertions for comprehensive validation.
- **Chores**
- Implemented a new tagging functionality for organizing test suites and
cases.
- Added new tags to the tagging system for improved test management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- This PR fixes below from Cypress suite to better developer experience
- Simplifies the AddDSL method
- Added AssertQueryTableResponse() & used
- SaveDataSource improved
- ReconnectDSbyName() created
- FirstTimeUserOnboarding_spec - 5th - Trail fix
#### Type of change
- Script fix (non-breaking change which fixes an issue)
## Testing
>
#### How Has This Been Tested?
- [X] Cypress CI runs
## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed
## Description
- This PR upgrades cypress from 11.2 to 12.13.0 which fixes the random
browser crash issue in CI runs
- ValidateNetworkStatus() updates to validate the n/w responses
- cy.route() to cy.intercept()
- Converting dataSources.json to HostPort.ts
- Api responses read - updating to right Cy12 supported format
- js inconsistent testJsontext to TS `EnterJSContext` in few failing
specs
- CI - higher resolution trials
- Improves _.agHelper.RefreshPage() - fixing Error: Socket closed before
finished writing response
- AssertDocumentReady() created
- within(()) & .children() - handled for Cy12
- Improved DeployApp(), NavigateBacktoEditor(), RefreshPage(), AddDsl()
methods
- js inconsistent goToEditFromPublish to TS `NavigateBacktoEditor` in
all specs
- js inconsistent PublishtheApp to TS `_.agHelper.DeployApp` in all
specs
- Convert /DynamicHeight/Text_Widget_spec.js to TS with all supporting
TS helpers
- ToggleJSMode()
- COMMIT_INFO_MESSAGE improved
- Remove tooltip on the Application Name after rename
- js inconsistent cy.addDsl(dsl); to TS helper `_.agHelper.AddDsl(val);`
- ++++ Much more improvements....
#### Type of change
- Script fixes
## Testing
#### How Has This Been Tested?
- [X] Cypress
## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed
---------
Co-authored-by: Vijetha-Kaja <vijetha@appsmith.com>
## 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
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
- Added test for appsmith upgrade
## Type of change
- Cypress
## How Has This Been Tested?
- Cypress
## 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 moves all specs from slim to fat container to run tests underneath it
- Fat has the actual libraries that are being shipping to customers, hence this PR
- Also includes moving Git tests from using GitHub to Gitea
## Type of change
- New run (non-breaking change which adds functionality)
## How Has This Been Tested?
- Cypress CI Fat runs
## Checklist:
### QA activity:
- [X] Test plan has been approved by relevant developers
- [X] Test plan has been peer reviewed by QA
- [X] Cypress test cases have been added and approved by either SDET or manual QA
- [X] Organized project review call with relevant stakeholders after Round 1/2 of QA
- [X] Added Test Plan Approved label after reveiwing all Cypress test
Co-authored-by: yatinappsmith <84702014+yatinappsmith@users.noreply.github.com>
## Description
- Appsmith Upgrade Test
## Type of change
- Cypress
## How Has This Been Tested?
- Cypress
## 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>
* Changes to on page load logic and consumption for update layout
* Slight clean up, tests and stuff
* - Added evaluationVersion logic based on application configuration
- Added configuration for slim and fat container rts availability
- Added backup logic of string comparison for slim containers
- Added tests for both paths
* Changes to on page load logic and consumption for update layout
* Slight clean up, tests and stuff
* Cleaned up comments all over
* Why isn't there even a setting to disable auto re-formats
* update rts logic to use updated shared AST logic
* Make changes to naming conventions
* Some temp stuff to check if update layout API changes will work out
* Added health check endpoint in RTS
* Added types for AST request
* update: type for save page request object
* update: return type for getEditorConfigs func
- Added applicationId to the type.
- Fetching from the redux store -> applications -> currentApplication -> id
* update: url generation func for update page API
- added applicationId as query param for the call
* Fixed test failures
* Fixed merge from release with on page load failure messages
* Fixed tests failing after merge
* Review comments, more tests, and fix for array index ref directly after .data path
* Test fix
* Addressed review comments
* Updated comment
* Fixed rts temporarily, added handling for data as function name, left with tests
* fix: failing rts server
* Tests for all types of actions and references
* Changes to test
* Modified type to set
* Test fixes
* Trying to make a test pass
* Added app id in cypress test update dsl
* Added app id in cypress test update dsl
* Added app id in cypress test update dsl
* Removed dep tree temp file
* Resolving compile issues after merging from release
* updated tests for applicationId
* corrected a typo
* fixed some more tests
* updated test
* Updated test
* DSL load AppId fix
* appId removal
* AgHelper LocalStorageCache()
* AgHelper LocalStorageCache() - commit 2
* AgHelper LocalStorageCache() - commit 3
* AgHelper LocalStorageCache() - commit 4
* AllWidgets_Reset_spec - Dsl fix
* Json_spec fix
* S3_2 spec fix
* fixes
* LocalStorageCache fixes
* fixes
* fixes
* fix
* OnLoadActions spec fix
* Promises spec fix
* S3_2 spec fix
* 16702 spec update
* OnLoadActions spec trial fix
* RTS fix
Co-authored-by: Nidhi Nair <cataclysm@Nidhis-MacBook-Pro.local>
Co-authored-by: Ayangade Adeoluwa <adeoluayangade@yahoo.com>
Co-authored-by: Ayush Pahwa <ayush@appsmith.com>
Co-authored-by: Aman Agarwal <aman@appsmith.com>
Co-authored-by: Apple <nandan@thinkify.io>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
* feat: Progress bar widget enhancements
-- Scaffold the widget for the first time
* feat: Progress bar widget enhancements
-- Change widget icon
* feat: Progress bar widget enhancements
-- Build property pane
* feat: Progress bar widget enhancements
-- Add a missing property, counterClockwise
-- Rename some properties
* feat: Progress bar widget enhancements
-- Build the first MVP of the widget
* feat: Progress bar widget enhancements
-- Reset rows to 4
* feat: Progress bar widget enhancements
-- Add Cypress test cases
* feat: Progress bar widget enhancements
-- Limit value by ranging from 0 to 100
* feat: Progress bar widget enhancements
-- Make isIndeterminate property not to be JS convertible
-- Hide progress bar and circular progress widget icon from entity explorer
* feat: Progress bar widget enhancements
-- Place indeterminate circular progress to be 100% fit into the container
* feat: Progress bar widget enhancements
-- Show result without rounding for the circular type
* feat: Progress bar widget enhancements
-- Comment out ProgressBar_spec.js
* feat: Progress bar widget enhancements
-- Remove circular progress and progressbar widgets from allowed list for list widget
* feat: Progress bar widget enhancements
-- Move ProgressBar_spec into CommentedScriptFiles directory
* Adding AForceMigration spec
* Merge from release
* Mongo CRUD data load check added
* Added bug id & adding to skip to checkin
* Unskipping MySQL_Spec to test TED
* Api-bugs spec fix
* Adding back MySQL_Spec to ignore
* EE_CopyQuery_RenameDatasource_spec revert to fix
* Skipping Git_sync flaky test
* Removing mySQl from ignore
* Unskipping Mongo cases as Bug12162 fixed
* Empty files moved due to Mocha update