-
Notifications
You must be signed in to change notification settings - Fork 974
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor query enhancement tests #9208
refactor query enhancement tests #9208
Conversation
Signed-off-by: Justin Kim <jungkm@amazon.com>
return generateTestConfiguration(datasetToUse, dataset.name, language); | ||
}) | ||
); | ||
}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a note: All of these utilities already existed in saved_search.js
util file. So I renamed the saved_search.js
file to saved.js
and changed the names/comments of some of the functions so that it is clear that it is to be used by both savedSearch
and savedQueries
/** | ||
* Returns an array of test configurations for every query language + dataset permutation | ||
* @param {GenerateTestConfigurationCallback} generateTestConfigurationCallback - cb function that generates a test case for the particular permutation | ||
* @returns {object[]} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note: This return type have been updated from SavedSearchTestConfig[]
to generic object[]
. The return type of this function is dictated by the output of the generateTestConfigurationCallback
parameter.
If JSDoc had full support for generics or helpful TS utilities like ReturnType
, I would be able to correctly type the return type of this function based on the return type of the callback, but based on my research JSDoc falls short when it comes to generics.
So unfortunately I had to resort to generic object[]
. One another example of why we should convert our cypress files to be fully Typescript (not even mentioning just how annoying it generally is to type things using JSDoc)
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #9208 +/- ##
==========================================
- Coverage 61.05% 61.02% -0.03%
==========================================
Files 3816 3816
Lines 91492 91492
Branches 14459 14459
==========================================
- Hits 55859 55835 -24
- Misses 32069 32138 +69
+ Partials 3564 3519 -45
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Can we update the name to common_utils.js
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See my comment below for _utils.js
suffix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Can we rename it to saved_object_utils.js
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are saved queries considered a saved object? I tried saving a saved query and it does not appear under assets/object
page. I initially considered saved_object
but after seeing this behavior I decided against it to avoid potential confusion.
Also in regard to the naming convention of X_utils.js
, I am ok with that change but for context, we have several files under this directory, all without the _utils
suffix, so if I change it for these files, I should change it for all files. (all these utils
are under cypres/UTILS/apps/query_enhancements
so I thought the _utils
was not needed)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
saved_queries are also considered a kind of saved object. You can select type as query to filter the assets in assets page to view it. So i think the moniker of saved_objects should be good.
That's nice point which I overlooked that all of the helpers are within the utils folder, which makes _utils
kind of redundant. I think we should be good not using the _utils
suffix.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. A couple of nits but no blockers.
Signed-off-by: Justin Kim <jungkm@amazon.com>
…ing backports (#9261) * [Discover] Makes caching dataset options optional (#8799) * [Discover] Makes caching dataset options optional. * Adds unit test * Changeset file for PR #8799 created/updated * Update test Signed-off-by: Kawika Avilla <kavilla414@gmail.com> --------- Signed-off-by: Kawika Avilla <kavilla414@gmail.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> Co-authored-by: Kawika Avilla <kavilla414@gmail.com> * Upgrade Cypress to v12 (#8995) * Update Cypress to v12 (#8926) * Update cypress to v12 Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Add required e2e.js Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Changeset file for PR #8926 created/updated * Update license header Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> * Update license in e2e.js Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Co-authored-by: Daniel Rowe <rowdane@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * fix: support imports without extensions in cypress webpack build (#8993) * fix: support imports without extensions in cypress webpack build Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Changeset file for PR #8993 created/updated * use typescript config Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> * fix lint Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> * disable new test isolation feature This isolation was causing regressions Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * [Discover Test] TestID-69: Filtering. Add data-test-subj tags. (#9027) * Update Cypress to v12 (#8926) * Update cypress to v12 Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Add required e2e.js Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Changeset file for PR #8926 created/updated * Update license header Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> * Update license in e2e.js Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Co-authored-by: Daniel Rowe <rowdane@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * fix: support imports without extensions in cypress webpack build (#8993) * fix: support imports without extensions in cypress webpack build Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Changeset file for PR #8993 created/updated * use typescript config Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> * fix lint Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> * disable new test isolation feature This isolation was causing regressions Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * Add data-test-subj tags. Signed-off-by: Argus Li <contactme@chunkeili.com> --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Signed-off-by: Argus Li <contactme@chunkeili.com> Co-authored-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Co-authored-by: Daniel Rowe <rowdane@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * Migrate query enhancement tests from functional repo to main (#9048) * migrate query enhacenement tests Signed-off-by: abbyhu2000 <abigailhu2000@gmail.com> * ignore lint in data files Signed-off-by: abbyhu2000 <abigailhu2000@gmail.com> * remove yarn lock changes Signed-off-by: abbyhu2000 <abigailhu2000@gmail.com> * add changelog Signed-off-by: abbyhu2000 <abigailhu2000@gmail.com> --------- Signed-off-by: abbyhu2000 <abigailhu2000@gmail.com> * Add missing data-test-subj tags for discover plugin (#9049) * Add data-test-subj for discover Signed-off-by: Anan Zhuang <ananzh@amazon.com> * fix comment Signed-off-by: Anan Zhuang <ananzh@amazon.com> --------- Signed-off-by: Anan Zhuang <ananzh@amazon.com> * Add missing data-test-subj tags for data plugin (#9051) * Add missing data-test-subj tags for data plugin * Update Snapshots * Fix as per the comments --------- Signed-off-by: Suchit Sahoo <suchsah@amazon.com> Co-authored-by: Anan Zhuang <ananzh@amazon.com> * Follow up on #9048 by updating data and utilities (#9060) * Follow up on #9048 by updating data and utilities Feature branch PRs: #9038 #9006 Signed-off-by: Anan <ananzh@amazon.com> * fix comment Signed-off-by: Anan <ananzh@amazon.com> * update path and add utility from suchit commit Signed-off-by: Anan <ananzh@amazon.com> * update the path to run sample test Signed-off-by: Anan <ananzh@amazon.com> * fix PR comments Signed-off-by: Anan <ananzh@amazon.com> * skip tests before enable workspace Signed-off-by: Anan <ananzh@amazon.com> --------- Signed-off-by: Anan <ananzh@amazon.com> * refactor some query-enhancement utility functions, add some missing typings (#9074) * refactor some query-enhancement utility functions, add some missing typings Signed-off-by: Justin Kim <jungkm@amazon.com> * Changeset file for PR #9074 created/updated --------- Signed-off-by: Justin Kim <jungkm@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * add queryEditorLanguageOptions data-test-subj on language_selector.tsx (#9029) Signed-off-by: Federico Silva <federico.silva.-nd@disney.com> Co-authored-by: Federico Silva <federico.silva.-nd@disney.com> * Re-enable dataset_selector.spec.js and queries.spec.js under workspace (#9082) * Re-enable dataset_selector.spec.js and queries.spec.js under workspace Signed-off-by: Anan <ananzh@amazon.com> * fix comment Signed-off-by: Anan <ananzh@amazon.com> * add verifyHitCount for PPL Signed-off-by: Anan <ananzh@amazon.com> * Changeset file for PR #9082 created/updated --------- Signed-off-by: Anan <ananzh@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * Make createWorkspaceIndexPatterns to handle no default cluster and clean up (#9129) * Make createWorkspaceIndexPatterns to handle no default cluster and clean up Signed-off-by: Anan <ananzh@amazon.com> * Changeset file for PR #9129 created/updated --------- Signed-off-by: Anan <ananzh@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * add data-test-subj (#9135) Signed-off-by: Federico Silva <federico.silva.dev@gmail.com> * [Discover] Adding Cypress Tests for S3 Datasets (#9113) * [Discover 2.0 Testing] Create Filtering Test (TestId-69: Filtering) (#9119) * Add test for filtering functionality for discover, which enables query enhancement * Make test more robust: Add logic to use date picker start and end buttons if set to absolute times. Check the table length directly instead of number of hits to avoid bug where not all results load. --------- Signed-off-by: Argus Li <contactme@chunkeili.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * Add tests for saved search creation and loading for query enhancement (#9112) * Add tests for saved search creation and loading for query enhancement * click on a random element before typing on query editor to bypass the popover that appears * address pr comments - refactor to create saved search as an api call * address pr comments - specifically navigate to discover page before setting datasource Signed-off-by: Justin Kim <jungkm@amazon.com> --------- Signed-off-by: Justin Kim <jungkm@amazon.com> Signed-off-by: Anan Zhuang <ananzh@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> Co-authored-by: Anan Zhuang <ananzh@amazon.com> * fix: 0 rendered in discover when there are no results (#9153) * fix: 0 rendered in discover when there are no results Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Changeset file for PR #9153 created/updated --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * [Cypress][Fix] Update saved search utilities (#9151) * update saved search * minor refactor4 on setDatePickerDatesAndSearchIfRelevant Signed-off-by: Justin Kim <jungkm@amazon.com> --------- Signed-off-by: Justin Kim <jungkm@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * chore: use relative paths in cypress (#9079) * chore: use relative paths in cypress when we move to running tests in parallel we won't be able to use a single hardcoded basepath as these can differ by tasks Signed-off-by: Daniel Rowe <rowdane@amazon.com> * Changeset file for PR #9079 created/updated --------- Signed-off-by: Daniel Rowe <rowdane@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * [Discover 2.0 Testing] Create View List of Saved Queries Test (Test-Id 124: View list of Saved query) (#9166) * add spec for old ui Signed-off-by: Argus Li <contactme@chunkeili.com> * Add comment about cleaning up saved queries Signed-off-by: Argus Li <contactme@chunkeili.com> * Add data-test-subj for save query new ui Signed-off-by: Argus Li <contactme@chunkeili.com> * Add data-test-subj for save query button for new ui Signed-off-by: Argus Li <contactme@chunkeili.com> * Add data-test-subj for open query button in query management popover Signed-off-by: Argus Li <contactme@chunkeili.com> * Add new ui spec to test list saved queries Signed-off-by: Argus Li <contactme@chunkeili.com> * Fix DataSource url Signed-off-by: Argus Li <contactme@chunkeili.com> * Changeset file for PR #9166 created/updated * Address Justin's comments. Signed-off-by: Argus Li <contactme@chunkeili.com> * Remove final force. Signed-off-by: Argus Li <contactme@chunkeili.com> * Fix final force. Signed-off-by: Argus Li <contactme@chunkeili.com> * Move utils to Suchit's suggested location, fix comments Signed-off-by: Argus Li <contactme@chunkeili.com> * Rename specs, change cypress workflow to use new save query ui, merge old ui and new ui commands Signed-off-by: Argus Li <contactme@chunkeili.com> * fix import Signed-off-by: Argus Li <contactme@chunkeili.com> --------- Signed-off-by: Argus Li <contactme@chunkeili.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> * change casing to folder structures to be compliant with our rules (#9197) Signed-off-by: Justin Kim <jungkm@amazon.com> * [Fix] Saved Search Integ Test Update: update saving a new saved search test spec (#9200) * wait for the page to be loaded before loading a saved search * when loading a saved search and saving it as a new saved search, use a different name Signed-off-by: Justin Kim <jungkm@amazon.com> --------- Signed-off-by: Justin Kim <jungkm@amazon.com> * refactor query enhancement tests (#9208) Signed-off-by: Justin Kim <jungkm@amazon.com> * chore: change casing of data-logs to be compliant with our git hook rules (#9220) Signed-off-by: Justin Kim <jungkm@amazon.com> * chore: remove unused/redundant functions from field_display_filtering utils (#9219) Signed-off-by: Justin Kim <jungkm@amazon.com> * Create cypress command namespacing util (#9150) * update cy.createInitialWorkspaceWithDataSource -> cy.osd.createInitialWorkspaceWithDataSource (#9262) Signed-off-by: Justin Kim <jungkm@amazon.com> --------- Signed-off-by: Kawika Avilla <kavilla414@gmail.com> Signed-off-by: Daniel Rowe <rowdane@amazon.com> Signed-off-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Signed-off-by: Argus Li <contactme@chunkeili.com> Signed-off-by: abbyhu2000 <abigailhu2000@gmail.com> Signed-off-by: Anan Zhuang <ananzh@amazon.com> Signed-off-by: Suchit Sahoo <suchsah@amazon.com> Signed-off-by: Anan <ananzh@amazon.com> Signed-off-by: Justin Kim <jungkm@amazon.com> Signed-off-by: Federico Silva <federico.silva.-nd@disney.com> Signed-off-by: Federico Silva <federico.silva.dev@gmail.com> Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com> Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com> Co-authored-by: Kawika Avilla <kavilla414@gmail.com> Co-authored-by: Daniel Rowe <51932404+d-rowe@users.noreply.github.com> Co-authored-by: Argus Li <43020525+ArgusLi@users.noreply.github.com> Co-authored-by: Daniel Rowe <rowdane@amazon.com> Co-authored-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com> Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com> Co-authored-by: Justin Kim <jungkm@amazon.com> Co-authored-by: Federico Silva <federico.silva@improving.com> Co-authored-by: Federico Silva <federico.silva.-nd@disney.com> Co-authored-by: Federico Silva <federico.silva.dev@gmail.com> Co-authored-by: Sean Li <lnse@amazon.com> Co-authored-by: d rowe <51932404+d-buckner@users.noreply.github.com>
Description
Refactor various tests within the query enhancement
shared.js
utils for query enhancement. Move all functions that can be used by all query enhancement tests to here, such asgetRandomizedWorkspaceName
,generateAllTestConfigurations
, andsetDatePickerDatesAndSearchIfRelevant
getRandomizedWorkspaceName
instead of each test having that logic themselvesfield_display_filtering.spec
, such as selecting a dataset, setting datepicker if relevant, etcsaved-queries-x.spec
to remove redundant functions as well as refactor certain tests to work isolated.should see all saved queries
depended on previous tests to have already made the queries. So I removed this test and added the logic to the end of the previous test insteadChangelog
Check List
yarn test:jest
yarn test:jest_integration