@coveo/quantic 3.44.1 → 3.44.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/force-app/main/default/classes/OrganizationEndpointsTest.cls +71 -15
- package/force-app/main/default/classes/RecommendationsControllerTest.cls +1 -1
- package/force-app/main/default/lwc/quanticTabBar/quanticTabBar.js +148 -125
- package/force-app/main/default/staticresources/coveoheadless/case-assist/headless.js +16 -16
- package/force-app/main/default/staticresources/coveoheadless/headless.js +17 -17
- package/force-app/main/default/staticresources/coveoheadless/insight/headless.js +16 -16
- package/force-app/main/default/staticresources/coveoheadless/recommendation/headless.js +16 -16
- package/package.json +33 -31
- package/force-app/main/default/lwc/quanticAriaLive/__tests__/quanticAriaLive.test.js +0 -106
- package/force-app/main/default/lwc/quanticBreadcrumbManager/__tests__/quanticBreadcrumbManager.test.js +0 -752
- package/force-app/main/default/lwc/quanticBreadcrumbManager/e2e/data.ts +0 -130
- package/force-app/main/default/lwc/quanticBreadcrumbManager/e2e/fixture.ts +0 -87
- package/force-app/main/default/lwc/quanticBreadcrumbManager/e2e/pageObject.ts +0 -282
- package/force-app/main/default/lwc/quanticBreadcrumbManager/e2e/quanticBreadcrumbManager.e2e.ts +0 -208
- package/force-app/main/default/lwc/quanticCarousel/__tests__/quanticCarousel.test.js +0 -262
- package/force-app/main/default/lwc/quanticCaseClassification/__tests__/quanticCaseClassification.test.js +0 -819
- package/force-app/main/default/lwc/quanticCaseClassification/e2e/data.ts +0 -23
- package/force-app/main/default/lwc/quanticCaseClassification/e2e/fixture.ts +0 -51
- package/force-app/main/default/lwc/quanticCaseClassification/e2e/pageObject.ts +0 -152
- package/force-app/main/default/lwc/quanticCaseClassification/e2e/quanticCaseClassification.e2e.ts +0 -269
- package/force-app/main/default/lwc/quanticCategoryFacet/__tests__/quanticCategoryFacet.test.js +0 -1183
- package/force-app/main/default/lwc/quanticCategoryFacet/e2e/data.ts +0 -91
- package/force-app/main/default/lwc/quanticCategoryFacet/e2e/fixture.ts +0 -79
- package/force-app/main/default/lwc/quanticCategoryFacet/e2e/pageObject.ts +0 -55
- package/force-app/main/default/lwc/quanticCategoryFacet/e2e/quanticCategoryFacet.e2e.ts +0 -219
- package/force-app/main/default/lwc/quanticCitation/__tests__/quanticCitation.test.js +0 -581
- package/force-app/main/default/lwc/quanticColoredResultBadge/__tests__/quanticColoredResultBadge.test.js +0 -212
- package/force-app/main/default/lwc/quanticDateFacet/__tests__/quanticDateFacet.test.js +0 -688
- package/force-app/main/default/lwc/quanticDateFacet/e2e/data.ts +0 -44
- package/force-app/main/default/lwc/quanticDateFacet/e2e/fixture.ts +0 -72
- package/force-app/main/default/lwc/quanticDateFacet/e2e/pageObject.ts +0 -27
- package/force-app/main/default/lwc/quanticDateFacet/e2e/quanticDateFacet.e2e.ts +0 -167
- package/force-app/main/default/lwc/quanticDidYouMean/__tests__/quanticDidYouMean.test.js +0 -348
- package/force-app/main/default/lwc/quanticDidYouMean/e2e/data.ts +0 -48
- package/force-app/main/default/lwc/quanticDidYouMean/e2e/fixture.ts +0 -84
- package/force-app/main/default/lwc/quanticDidYouMean/e2e/pageObject.ts +0 -173
- package/force-app/main/default/lwc/quanticDidYouMean/e2e/quanticDidYouMean.e2e.ts +0 -219
- package/force-app/main/default/lwc/quanticDocumentSuggestion/__tests__/quanticDocumentSuggestion.test.js +0 -404
- package/force-app/main/default/lwc/quanticDocumentSuggestion/e2e/fixture.ts +0 -38
- package/force-app/main/default/lwc/quanticDocumentSuggestion/e2e/pageObject.ts +0 -52
- package/force-app/main/default/lwc/quanticDocumentSuggestion/e2e/quanticDocumentSuggestion.e2e.ts +0 -102
- package/force-app/main/default/lwc/quanticFacet/__tests__/quanticFacet.test.js +0 -1105
- package/force-app/main/default/lwc/quanticFacet/e2e/data.ts +0 -62
- package/force-app/main/default/lwc/quanticFacet/e2e/fixture.ts +0 -78
- package/force-app/main/default/lwc/quanticFacet/e2e/pageObject.ts +0 -67
- package/force-app/main/default/lwc/quanticFacet/e2e/quanticFacet.e2e.ts +0 -242
- package/force-app/main/default/lwc/quanticFacetCaption/__tests__/quanticFacetCaption.test.js +0 -28
- package/force-app/main/default/lwc/quanticFacetManager/__tests__/quanticFacetManager.test.js +0 -178
- package/force-app/main/default/lwc/quanticFacetManager/e2e/data.ts +0 -59
- package/force-app/main/default/lwc/quanticFacetManager/e2e/fixture.ts +0 -75
- package/force-app/main/default/lwc/quanticFacetManager/e2e/pageObject.ts +0 -23
- package/force-app/main/default/lwc/quanticFacetManager/e2e/quanticFacetManager.e2e.ts +0 -82
- package/force-app/main/default/lwc/quanticFeedback/__tests__/quanticFeedback.test.js +0 -403
- package/force-app/main/default/lwc/quanticFeedbackModal/__tests__/quanticFeedbackModal.test.js +0 -448
- package/force-app/main/default/lwc/quanticFeedbackModalQna/__tests__/quanticFeedbackModalQna.test.js +0 -298
- package/force-app/main/default/lwc/quanticFoldedResultList/__tests__/quanticFoldedResultList.test.js +0 -323
- package/force-app/main/default/lwc/quanticFoldedResultList/e2e/fixture.ts +0 -74
- package/force-app/main/default/lwc/quanticFoldedResultList/e2e/pageObject.ts +0 -81
- package/force-app/main/default/lwc/quanticFoldedResultList/e2e/quanticFoldedResultList.e2e.ts +0 -69
- package/force-app/main/default/lwc/quanticGeneratedAnswer/__tests__/quanticGeneratedAnswer.test.js +0 -1575
- package/force-app/main/default/lwc/quanticGeneratedAnswer/e2e/agentData.ts +0 -279
- package/force-app/main/default/lwc/quanticGeneratedAnswer/e2e/data.ts +0 -56
- package/force-app/main/default/lwc/quanticGeneratedAnswer/e2e/fixture-agent.ts +0 -77
- package/force-app/main/default/lwc/quanticGeneratedAnswer/e2e/fixture.ts +0 -194
- package/force-app/main/default/lwc/quanticGeneratedAnswer/e2e/pageObject.ts +0 -599
- package/force-app/main/default/lwc/quanticGeneratedAnswer/e2e/quanticGeneratedAnswer.e2e.ts +0 -333
- package/force-app/main/default/lwc/quanticGeneratedAnswer/e2e/quanticGeneratedAnswerAgent.e2e.ts +0 -298
- package/force-app/main/default/lwc/quanticGeneratedAnswerBody/__tests__/quanticGeneratedAnswerBody.test.js +0 -418
- package/force-app/main/default/lwc/quanticGeneratedAnswerContent/__tests__/quanticGeneratedAnswerContent.test.js +0 -447
- package/force-app/main/default/lwc/quanticGeneratedAnswerCopyToClipboard/__tests__/quanticGeneratedAnswerCopyToClipboard.test.js +0 -129
- package/force-app/main/default/lwc/quanticGeneratedAnswerFollowUpInput/__tests__/quanticGeneratedAnswerFollowUpInput.test.js +0 -466
- package/force-app/main/default/lwc/quanticGeneratedAnswerStreamOfThought/__tests__/quanticGeneratedAnswerStreamOfThought.test.js +0 -402
- package/force-app/main/default/lwc/quanticGeneratedAnswerStreamOfThought/__tests__/stepsUtils.test.js +0 -118
- package/force-app/main/default/lwc/quanticGeneratedAnswerThread/__tests__/quanticGeneratedAnswerThread.test.js +0 -285
- package/force-app/main/default/lwc/quanticHeading/__tests__/quanticHeading.test.js +0 -71
- package/force-app/main/default/lwc/quanticHeadlessLoader/__tests__/quanticHeadlessLoader.test.js +0 -651
- package/force-app/main/default/lwc/quanticInsightInterface/__tests__/quanticInsightInterface.test.js +0 -194
- package/force-app/main/default/lwc/quanticInsightSummary/__tests__/quanticInsightSummary.test.js +0 -230
- package/force-app/main/default/lwc/quanticModal/__tests__/quanticModal.test.js +0 -205
- package/force-app/main/default/lwc/quanticNotifications/__tests__/quanticNotifications.test.js +0 -309
- package/force-app/main/default/lwc/quanticNotifications/e2e/fixture.ts +0 -62
- package/force-app/main/default/lwc/quanticNotifications/e2e/pageObject.ts +0 -55
- package/force-app/main/default/lwc/quanticNotifications/e2e/quanticNotifications.e2e.ts +0 -47
- package/force-app/main/default/lwc/quanticNumericFacet/__tests__/quanticNumericFacet.test.js +0 -953
- package/force-app/main/default/lwc/quanticNumericFacet/e2e/data.ts +0 -48
- package/force-app/main/default/lwc/quanticNumericFacet/e2e/fixture.ts +0 -75
- package/force-app/main/default/lwc/quanticNumericFacet/e2e/pageObject.ts +0 -59
- package/force-app/main/default/lwc/quanticNumericFacet/e2e/quanticNumericFacet.e2e.ts +0 -186
- package/force-app/main/default/lwc/quanticPager/__tests__/quanticPager.test.js +0 -430
- package/force-app/main/default/lwc/quanticPager/e2e/fixture.ts +0 -65
- package/force-app/main/default/lwc/quanticPager/e2e/pageObject.ts +0 -69
- package/force-app/main/default/lwc/quanticPager/e2e/quanticPager.e2e.ts +0 -106
- package/force-app/main/default/lwc/quanticPlaceholder/__tests__/quanticPlaceholder.test.js +0 -47
- package/force-app/main/default/lwc/quanticQuickviewContent/__tests__/data/defaultTestCase.json +0 -13
- package/force-app/main/default/lwc/quanticQuickviewContent/__tests__/data/youtubeTestCase.json +0 -14
- package/force-app/main/default/lwc/quanticQuickviewContent/__tests__/quanticQuickviewContent.test.js +0 -82
- package/force-app/main/default/lwc/quanticRadioButtonsGroup/__tests__/quanticRadioButtonsGroup.test.js +0 -273
- package/force-app/main/default/lwc/quanticRecentQueriesList/__tests__/quanticRecentQueriesList.test.js +0 -448
- package/force-app/main/default/lwc/quanticRecentQueriesList/e2e/fixture.ts +0 -43
- package/force-app/main/default/lwc/quanticRecentQueriesList/e2e/pageObject.ts +0 -55
- package/force-app/main/default/lwc/quanticRecentQueriesList/e2e/quanticRecentQueriesList.e2e.ts +0 -93
- package/force-app/main/default/lwc/quanticRecentResultsList/__tests__/quanticRecentResultsList.test.js +0 -516
- package/force-app/main/default/lwc/quanticRecentResultsList/e2e/fixture.ts +0 -43
- package/force-app/main/default/lwc/quanticRecentResultsList/e2e/pageObject.ts +0 -61
- package/force-app/main/default/lwc/quanticRecentResultsList/e2e/quanticRecentResultsList.e2e.ts +0 -48
- package/force-app/main/default/lwc/quanticRecommendationList/__tests__/quanticRecommendationList.test.js +0 -491
- package/force-app/main/default/lwc/quanticRecommendationList/e2e/fixture.ts +0 -36
- package/force-app/main/default/lwc/quanticRecommendationList/e2e/pageObject.ts +0 -52
- package/force-app/main/default/lwc/quanticRecommendationList/e2e/quanticRecommendationList.e2e.ts +0 -53
- package/force-app/main/default/lwc/quanticRefineModalContent/__tests__/quanticRefineModalContent.test.js +0 -747
- package/force-app/main/default/lwc/quanticRefineToggle/__tests__/quanticRefineToggle.test.js +0 -544
- package/force-app/main/default/lwc/quanticResultAction/__tests__/quanticResultAction.test.js +0 -262
- package/force-app/main/default/lwc/quanticResultActionBar/__tests__/quanticResultActionBar.test.js +0 -141
- package/force-app/main/default/lwc/quanticResultChildren/__tests__/quanticResultChildren.test.js +0 -340
- package/force-app/main/default/lwc/quanticResultCopyToClipboard/__tests__/quanticResultCopyToClipboard.test.js +0 -300
- package/force-app/main/default/lwc/quanticResultCopyToClipboard/e2e/fixture.ts +0 -49
- package/force-app/main/default/lwc/quanticResultCopyToClipboard/e2e/pageObject.ts +0 -49
- package/force-app/main/default/lwc/quanticResultCopyToClipboard/e2e/quanticResultCopyToClipboard.e2e.ts +0 -40
- package/force-app/main/default/lwc/quanticResultDate/__tests__/quanticResultDate.test.js +0 -144
- package/force-app/main/default/lwc/quanticResultField/__tests__/quanticResultField.test.js +0 -120
- package/force-app/main/default/lwc/quanticResultHighlightedTextField/__tests__/quanticResultHighlightedTextField.test.js +0 -209
- package/force-app/main/default/lwc/quanticResultLink/__tests__/quanticResultLink.test.js +0 -302
- package/force-app/main/default/lwc/quanticResultList/__tests__/quanticResultList.test.js +0 -342
- package/force-app/main/default/lwc/quanticResultList/e2e/fixture.ts +0 -70
- package/force-app/main/default/lwc/quanticResultList/e2e/pageObject.ts +0 -81
- package/force-app/main/default/lwc/quanticResultList/e2e/quanticResultList.e2e.ts +0 -69
- package/force-app/main/default/lwc/quanticResultMultiValueText/__tests__/quanticResultMultiValueText.test.js +0 -235
- package/force-app/main/default/lwc/quanticResultNumber/__tests__/quanticResultNumber.test.js +0 -144
- package/force-app/main/default/lwc/quanticResultPrintableUri/__tests__/quanticResultPrintableUri.test.js +0 -324
- package/force-app/main/default/lwc/quanticResultQuickview/__tests__/quanticResultQuickview.test.js +0 -308
- package/force-app/main/default/lwc/quanticResultQuickview/e2e/fixture.ts +0 -85
- package/force-app/main/default/lwc/quanticResultQuickview/e2e/pageObject.ts +0 -38
- package/force-app/main/default/lwc/quanticResultQuickview/e2e/quanticResultQuickView.e2e.ts +0 -66
- package/force-app/main/default/lwc/quanticResultTemplate/__tests__/quanticResultTemplate.test.js +0 -90
- package/force-app/main/default/lwc/quanticResultText/__tests__/quanticResultText.test.js +0 -155
- package/force-app/main/default/lwc/quanticResultsPerPage/__tests__/quanticResultsPerPage.test.js +0 -464
- package/force-app/main/default/lwc/quanticResultsPerPage/e2e/fixture.ts +0 -78
- package/force-app/main/default/lwc/quanticResultsPerPage/e2e/pageObject.ts +0 -85
- package/force-app/main/default/lwc/quanticResultsPerPage/e2e/quanticResultsPerPage.e2e.ts +0 -97
- package/force-app/main/default/lwc/quanticSearchBox/__tests__/quanticSearchBox.test.js +0 -487
- package/force-app/main/default/lwc/quanticSearchBox/e2e/fixture.ts +0 -86
- package/force-app/main/default/lwc/quanticSearchBox/e2e/pageObject.ts +0 -45
- package/force-app/main/default/lwc/quanticSearchBox/e2e/quanticSearchBox.e2e.ts +0 -159
- package/force-app/main/default/lwc/quanticSearchBoxInput/__tests__/quanticSearchBoxInput.test.js +0 -743
- package/force-app/main/default/lwc/quanticSearchBoxSuggestionsList/__tests__/quanticSearchBoxSuggestionsList.test.js +0 -571
- package/force-app/main/default/lwc/quanticSearchBoxSuggestionsList/e2e/fixture.ts +0 -113
- package/force-app/main/default/lwc/quanticSearchBoxSuggestionsList/e2e/pageObject.ts +0 -113
- package/force-app/main/default/lwc/quanticSearchBoxSuggestionsList/e2e/quanticSearchBoxSuggestionsList.e2e.ts +0 -282
- package/force-app/main/default/lwc/quanticSmartSnippet/__tests__/quanticSmartSnippet.test.js +0 -341
- package/force-app/main/default/lwc/quanticSmartSnippet/e2e/data.ts +0 -21
- package/force-app/main/default/lwc/quanticSmartSnippet/e2e/fixture.ts +0 -93
- package/force-app/main/default/lwc/quanticSmartSnippet/e2e/pageObject.ts +0 -196
- package/force-app/main/default/lwc/quanticSmartSnippet/e2e/quanticSmartSnippet.e2e.ts +0 -168
- package/force-app/main/default/lwc/quanticSmartSnippetAnswer/__tests__/quanticSmartSnippetAnswer.test.js +0 -126
- package/force-app/main/default/lwc/quanticSmartSnippetSource/__tests__/quanticSmartSnippetSource.test.js +0 -290
- package/force-app/main/default/lwc/quanticSmartSnippetSuggestions/__tests__/quanticSmartSnippetSuggestions.test.js +0 -329
- package/force-app/main/default/lwc/quanticSmartSnippetSuggestions/e2e/data.ts +0 -31
- package/force-app/main/default/lwc/quanticSmartSnippetSuggestions/e2e/fixture.ts +0 -95
- package/force-app/main/default/lwc/quanticSmartSnippetSuggestions/e2e/pageObject.ts +0 -160
- package/force-app/main/default/lwc/quanticSmartSnippetSuggestions/e2e/quanticSmartSnippetSuggestions.e2e.ts +0 -127
- package/force-app/main/default/lwc/quanticSort/__tests__/quanticSort.test.js +0 -416
- package/force-app/main/default/lwc/quanticSort/e2e/fixture.ts +0 -62
- package/force-app/main/default/lwc/quanticSort/e2e/pageObject.ts +0 -100
- package/force-app/main/default/lwc/quanticSort/e2e/quanticSort.e2e.ts +0 -86
- package/force-app/main/default/lwc/quanticSourceCitations/__tests__/quanticSourceCitations.test.js +0 -156
- package/force-app/main/default/lwc/quanticStandaloneSearchBox/__tests__/quanticStandaloneSearchBox.test.js +0 -387
- package/force-app/main/default/lwc/quanticStandaloneSearchBox/e2e/fixture.ts +0 -54
- package/force-app/main/default/lwc/quanticStandaloneSearchBox/e2e/pageObject.ts +0 -54
- package/force-app/main/default/lwc/quanticStandaloneSearchBox/e2e/quanticStandaloneSearchBox.e2e.ts +0 -72
- package/force-app/main/default/lwc/quanticStatefulButton/__tests__/quanticStatefulButton.test.js +0 -222
- package/force-app/main/default/lwc/quanticSummary/__tests__/quanticSummary.test.js +0 -244
- package/force-app/main/default/lwc/quanticTab/__tests__/quanticTab.test.js +0 -333
- package/force-app/main/default/lwc/quanticTab/e2e/fixture.ts +0 -60
- package/force-app/main/default/lwc/quanticTab/e2e/pageObject.ts +0 -68
- package/force-app/main/default/lwc/quanticTab/e2e/quanticTab.e2e.ts +0 -72
- package/force-app/main/default/lwc/quanticTabBar/__tests__/quanticTabBar.test.js +0 -331
- package/force-app/main/default/lwc/quanticTabBar/e2e/fixture.ts +0 -65
- package/force-app/main/default/lwc/quanticTabBar/e2e/pageObject.ts +0 -80
- package/force-app/main/default/lwc/quanticTabBar/e2e/quanticTabBar.e2e.ts +0 -172
- package/force-app/main/default/lwc/quanticThreadItem/__tests__/quanticThreadItem.test.js +0 -314
- package/force-app/main/default/lwc/quanticTimeframeFacet/__tests__/quanticTimeframeFacet.test.js +0 -1059
- package/force-app/main/default/lwc/quanticTimeframeFacet/e2e/data.ts +0 -66
- package/force-app/main/default/lwc/quanticTimeframeFacet/e2e/fixture.ts +0 -74
- package/force-app/main/default/lwc/quanticTimeframeFacet/e2e/pageObject.ts +0 -43
- package/force-app/main/default/lwc/quanticTimeframeFacet/e2e/quanticTimeframeFacet.e2e.ts +0 -184
- package/force-app/main/default/lwc/quanticTooltip/__tests__/quanticTooltip.test.js +0 -107
- package/force-app/main/default/lwc/quanticUserAction/__tests__/quanticUserAction.test.js +0 -427
- package/force-app/main/default/lwc/quanticUserActionsSession/__tests__/quanticUserActionsSession.test.js +0 -269
- package/force-app/main/default/lwc/quanticUserActionsTimeline/__tests__/data/userActionsState.json +0 -89
- package/force-app/main/default/lwc/quanticUserActionsTimeline/__tests__/quanticUserActionsTimeline.test.js +0 -511
- package/force-app/main/default/lwc/quanticUserActionsToggle/__tests__/quanticUserActionsToggle.test.js +0 -229
- package/force-app/main/default/lwc/quanticUserActionsToggle/e2e/data.ts +0 -32
- package/force-app/main/default/lwc/quanticUserActionsToggle/e2e/fixture.ts +0 -32
- package/force-app/main/default/lwc/quanticUserActionsToggle/e2e/pageObject.ts +0 -71
- package/force-app/main/default/lwc/quanticUserActionsToggle/e2e/quanticUserActionsToggle.e2e.ts +0 -39
- package/force-app/main/default/lwc/quanticUtils/__tests__/accessibilityUtils.test.js +0 -214
- package/force-app/main/default/lwc/quanticUtils/__tests__/citationAnchoringUtils.test.js +0 -84
- package/force-app/main/default/lwc/quanticUtils/__tests__/facetDependenciesUtils.test.js +0 -92
- package/force-app/main/default/lwc/quanticUtils/__tests__/facetStoreUtils.test.js +0 -86
- package/force-app/main/default/lwc/quanticUtils/__tests__/markdownUtils.test.js +0 -109
- package/force-app/main/default/lwc/quanticUtils/__tests__/quanticUtils.test.js +0 -233
- package/force-app/main/default/lwc/quanticUtils/__tests__/timeAndDateUtils.test.js +0 -22
- package/force-app/main/default/lwc/quanticViewedByCustomerBadge/__tests__/quanticViewedByCustomerBadge.test.js +0 -131
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import {DidYouMeanObject} from './pageObject';
|
|
2
|
-
import {quanticBase} from '../../../../../../playwright/fixtures/baseFixture';
|
|
3
|
-
import {
|
|
4
|
-
insightSearchRequestRegex,
|
|
5
|
-
searchRequestRegex,
|
|
6
|
-
} from '../../../../../../playwright/utils/requests';
|
|
7
|
-
import {InsightSetupObject} from '../../../../../../playwright/page-object/insightSetupObject';
|
|
8
|
-
import {
|
|
9
|
-
DidYouMeanLegacyData,
|
|
10
|
-
QueryTriggerData,
|
|
11
|
-
SearchObjectWithDidYouMeanOrTrigger,
|
|
12
|
-
} from '../../../../../../playwright/page-object/searchObjectWithDidYouMean';
|
|
13
|
-
import mockData from './data';
|
|
14
|
-
import {useCaseEnum} from '../../../../../../playwright/utils/useCase';
|
|
15
|
-
|
|
16
|
-
const pageUrl = 's/quantic-did-you-mean';
|
|
17
|
-
|
|
18
|
-
interface DidYouMeanOptions {
|
|
19
|
-
disableQueryAutoCorrection: boolean;
|
|
20
|
-
queryCorrectionMode: string;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
type QuanticDidYouMeanE2ESearchFixtures = {
|
|
24
|
-
didYouMeanData?: DidYouMeanLegacyData;
|
|
25
|
-
queryTriggerData?: QueryTriggerData;
|
|
26
|
-
didYouMean: DidYouMeanObject;
|
|
27
|
-
search: SearchObjectWithDidYouMeanOrTrigger;
|
|
28
|
-
options: Partial<DidYouMeanOptions>;
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
type QuanticDidYouMeanE2EInsightFixtures =
|
|
32
|
-
QuanticDidYouMeanE2ESearchFixtures & {
|
|
33
|
-
insightSetup: InsightSetupObject;
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
export const testSearch =
|
|
37
|
-
quanticBase.extend<QuanticDidYouMeanE2ESearchFixtures>({
|
|
38
|
-
didYouMeanData: mockData.didYouMeanData,
|
|
39
|
-
queryTriggerData: mockData.queryTriggerData,
|
|
40
|
-
options: {},
|
|
41
|
-
search: async ({page}, use) => {
|
|
42
|
-
await use(
|
|
43
|
-
new SearchObjectWithDidYouMeanOrTrigger(page, searchRequestRegex)
|
|
44
|
-
);
|
|
45
|
-
},
|
|
46
|
-
didYouMean: async ({page, options, configuration, search}, use) => {
|
|
47
|
-
await search.mockSearchWithBaseResponse();
|
|
48
|
-
await page.goto(pageUrl);
|
|
49
|
-
configuration.configure(options);
|
|
50
|
-
await search.waitForSearchResponse();
|
|
51
|
-
await use(new DidYouMeanObject(page));
|
|
52
|
-
},
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
export const testInsight =
|
|
56
|
-
quanticBase.extend<QuanticDidYouMeanE2EInsightFixtures>({
|
|
57
|
-
didYouMeanData: mockData.didYouMeanData,
|
|
58
|
-
queryTriggerData: mockData.queryTriggerData,
|
|
59
|
-
options: {},
|
|
60
|
-
search: async ({page}, use) => {
|
|
61
|
-
await use(
|
|
62
|
-
new SearchObjectWithDidYouMeanOrTrigger(page, insightSearchRequestRegex)
|
|
63
|
-
);
|
|
64
|
-
},
|
|
65
|
-
insightSetup: async ({page}, use) => {
|
|
66
|
-
await use(new InsightSetupObject(page));
|
|
67
|
-
},
|
|
68
|
-
didYouMean: async (
|
|
69
|
-
{page, options, search, configuration, insightSetup},
|
|
70
|
-
use
|
|
71
|
-
) => {
|
|
72
|
-
await search.mockSearchWithBaseResponse();
|
|
73
|
-
await page.goto(pageUrl);
|
|
74
|
-
configuration.configure({...options, useCase: useCaseEnum.insight});
|
|
75
|
-
await insightSetup.waitForInsightInterfaceInitialization();
|
|
76
|
-
await Promise.all([
|
|
77
|
-
search.waitForSearchResponse(),
|
|
78
|
-
search.performSearch(),
|
|
79
|
-
]);
|
|
80
|
-
await use(new DidYouMeanObject(page));
|
|
81
|
-
},
|
|
82
|
-
});
|
|
83
|
-
|
|
84
|
-
export {expect} from '@playwright/test';
|
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
import type {Locator, Page, Request} from '@playwright/test';
|
|
2
|
-
import {
|
|
3
|
-
isUaSearchEvent,
|
|
4
|
-
isSearchRequest,
|
|
5
|
-
isUaCustomEvent,
|
|
6
|
-
} from '../../../../../../playwright/utils/requests';
|
|
7
|
-
|
|
8
|
-
export class DidYouMeanObject {
|
|
9
|
-
constructor(public page: Page) {
|
|
10
|
-
this.page = page;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
get didYouMeanNoResultsLabel(): Locator {
|
|
14
|
-
return this.page.getByTestId('no-result-label');
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
get didYouMeanAutomaticQueryCorrectionLabel(): Locator {
|
|
18
|
-
return this.page.getByTestId('automatic-query-correction-label');
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
get didYouMeanManualCorrectionLabel(): Locator {
|
|
22
|
-
return this.page.getByTestId('did-you-mean-label');
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
get applyCorrectionButton(): Locator {
|
|
26
|
-
return this.page.getByTestId('apply-correction-button');
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
get showingResultsForLabel(): Locator {
|
|
30
|
-
return this.page.getByTestId('showing-results-for-label');
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
get searchInsteadForLabel(): Locator {
|
|
34
|
-
return this.page.getByTestId('search-instead-for-label');
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
get undoButton(): Locator {
|
|
38
|
-
return this.page.getByTestId('undo-button');
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
async applyCorrection(): Promise<void> {
|
|
42
|
-
await this.applyCorrectionButton.click();
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
async undo(): Promise<void> {
|
|
46
|
-
await this.undoButton.click();
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
async waitForDidYouMeanSearchRequest(
|
|
50
|
-
expectedQuery: string
|
|
51
|
-
): Promise<Request> {
|
|
52
|
-
const searchRequest = this.page.waitForRequest((request) => {
|
|
53
|
-
if (isSearchRequest(request)) {
|
|
54
|
-
const requestBody = request.postDataJSON?.();
|
|
55
|
-
return (
|
|
56
|
-
requestBody &&
|
|
57
|
-
requestBody.enableDidYouMean &&
|
|
58
|
-
!!requestBody.queryCorrection &&
|
|
59
|
-
requestBody.q === expectedQuery
|
|
60
|
-
);
|
|
61
|
-
}
|
|
62
|
-
return false;
|
|
63
|
-
});
|
|
64
|
-
return searchRequest;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
async waitForDidYouMeanAutomaticAnalytics(
|
|
68
|
-
expectedFields: Record<string, any>
|
|
69
|
-
): Promise<Request> {
|
|
70
|
-
return this.waitForDidYouMeanSearchAnalytics(
|
|
71
|
-
'didyoumeanAutomatic',
|
|
72
|
-
(data: Record<string, any>) => {
|
|
73
|
-
return Object.keys(expectedFields).every(
|
|
74
|
-
(key) => data?.[key] === expectedFields[key]
|
|
75
|
-
);
|
|
76
|
-
}
|
|
77
|
-
);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
async waitForDidYouMeanManualAnalytics(
|
|
81
|
-
expectedFields: Record<string, any>
|
|
82
|
-
): Promise<Request> {
|
|
83
|
-
return this.waitForDidYouMeanSearchAnalytics(
|
|
84
|
-
'didyoumeanClick',
|
|
85
|
-
(data: Record<string, any>) => {
|
|
86
|
-
return Object.keys(expectedFields).every(
|
|
87
|
-
(key) => data?.[key] === expectedFields[key]
|
|
88
|
-
);
|
|
89
|
-
}
|
|
90
|
-
);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
async waitForQueryTriggerCustomAnalytics(
|
|
94
|
-
expectedFields: Record<string, any>
|
|
95
|
-
): Promise<Request> {
|
|
96
|
-
return this.waitForCustomUARequest(
|
|
97
|
-
'queryPipelineTriggers',
|
|
98
|
-
'query',
|
|
99
|
-
(data: Record<string, any>) => {
|
|
100
|
-
return Object.keys(expectedFields).every(
|
|
101
|
-
(key) => data?.[key] === expectedFields[key]
|
|
102
|
-
);
|
|
103
|
-
}
|
|
104
|
-
);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
async waitForUndoQueryAnalytics(
|
|
108
|
-
expectedFields: Record<string, any>
|
|
109
|
-
): Promise<Request> {
|
|
110
|
-
return this.waitForDidYouMeanSearchAnalytics(
|
|
111
|
-
'undoQuery',
|
|
112
|
-
(data: Record<string, any>) => {
|
|
113
|
-
return Object.keys(expectedFields).every(
|
|
114
|
-
(key) => data?.[key] === expectedFields[key]
|
|
115
|
-
);
|
|
116
|
-
}
|
|
117
|
-
);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
async waitForDidYouMeanSearchAnalytics(
|
|
121
|
-
actionCause: string,
|
|
122
|
-
customChecker?: Function
|
|
123
|
-
): Promise<Request> {
|
|
124
|
-
const uaRequest = this.page.waitForRequest((request) => {
|
|
125
|
-
if (isUaSearchEvent(request)) {
|
|
126
|
-
const requestBody = request.postDataJSON?.();
|
|
127
|
-
|
|
128
|
-
const expectedFields: Record<string, any> = {
|
|
129
|
-
actionCause: actionCause,
|
|
130
|
-
};
|
|
131
|
-
|
|
132
|
-
const matchesExpectedFields = Object.keys(expectedFields).every(
|
|
133
|
-
(key) => requestBody?.[key] === expectedFields[key]
|
|
134
|
-
);
|
|
135
|
-
|
|
136
|
-
return (
|
|
137
|
-
matchesExpectedFields &&
|
|
138
|
-
(customChecker ? customChecker(requestBody) : true)
|
|
139
|
-
);
|
|
140
|
-
}
|
|
141
|
-
return false;
|
|
142
|
-
});
|
|
143
|
-
return uaRequest;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
async waitForCustomUARequest(
|
|
147
|
-
eventType: string,
|
|
148
|
-
eventValue: string,
|
|
149
|
-
customChecker?: Function
|
|
150
|
-
): Promise<Request> {
|
|
151
|
-
const uaRequest = this.page.waitForRequest((request) => {
|
|
152
|
-
if (isUaCustomEvent(request)) {
|
|
153
|
-
const requestBody = request.postDataJSON?.();
|
|
154
|
-
|
|
155
|
-
const expectedFields: Record<string, any> = {
|
|
156
|
-
eventType,
|
|
157
|
-
eventValue,
|
|
158
|
-
};
|
|
159
|
-
|
|
160
|
-
const matchesExpectedFields = Object.keys(expectedFields).every(
|
|
161
|
-
(key) => requestBody?.[key] === expectedFields[key]
|
|
162
|
-
);
|
|
163
|
-
|
|
164
|
-
return (
|
|
165
|
-
matchesExpectedFields &&
|
|
166
|
-
(customChecker ? customChecker(requestBody) : true)
|
|
167
|
-
);
|
|
168
|
-
}
|
|
169
|
-
return false;
|
|
170
|
-
});
|
|
171
|
-
return uaRequest;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
import {useCaseTestCases} from '../../../../../../playwright/utils/useCase';
|
|
2
|
-
import {testInsight, testSearch, expect} from './fixture';
|
|
3
|
-
import mockData from './data';
|
|
4
|
-
|
|
5
|
-
const {
|
|
6
|
-
originalQuery: expectedOriginalQuery,
|
|
7
|
-
correctedQuery: expectedCorrectedQuery,
|
|
8
|
-
didYouMeanData,
|
|
9
|
-
didYouMeanNextData,
|
|
10
|
-
queryTriggerData,
|
|
11
|
-
triggeredQuery: expectedTriggeredQuery,
|
|
12
|
-
} = mockData;
|
|
13
|
-
|
|
14
|
-
const fixtures = {
|
|
15
|
-
search: testSearch,
|
|
16
|
-
insight: testInsight,
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
useCaseTestCases.forEach((useCase) => {
|
|
20
|
-
let test = fixtures[useCase.value];
|
|
21
|
-
|
|
22
|
-
test.describe(`quantic did you mean ${useCase.label}`, () => {
|
|
23
|
-
test.describe('when we have an automatic did you mean query correction', () => {
|
|
24
|
-
test.describe('with queryCorrectionMode set to "legacy"', () => {
|
|
25
|
-
test.use({
|
|
26
|
-
didYouMeanData,
|
|
27
|
-
options: {
|
|
28
|
-
disableQueryAutoCorrection: false,
|
|
29
|
-
queryCorrectionMode: 'legacy',
|
|
30
|
-
},
|
|
31
|
-
});
|
|
32
|
-
test('should display the didYouMean component and send the analytics', async ({
|
|
33
|
-
didYouMean,
|
|
34
|
-
search,
|
|
35
|
-
}) => {
|
|
36
|
-
await search.mockSearchWithDidYouMeanLegacyResponse(didYouMeanData);
|
|
37
|
-
const automaticallyCorrectSearchPromise =
|
|
38
|
-
search.waitForSearchResponse();
|
|
39
|
-
const expectedUaRequestPromise =
|
|
40
|
-
didYouMean.waitForDidYouMeanAutomaticAnalytics({
|
|
41
|
-
queryText: expectedCorrectedQuery,
|
|
42
|
-
});
|
|
43
|
-
await search.triggerSearchWithInput(expectedOriginalQuery);
|
|
44
|
-
await expectedUaRequestPromise;
|
|
45
|
-
await automaticallyCorrectSearchPromise;
|
|
46
|
-
|
|
47
|
-
await expect(didYouMean.didYouMeanNoResultsLabel).toBeVisible();
|
|
48
|
-
await expect(didYouMean.didYouMeanNoResultsLabel).toContainText(
|
|
49
|
-
expectedOriginalQuery
|
|
50
|
-
);
|
|
51
|
-
await expect(
|
|
52
|
-
didYouMean.didYouMeanAutomaticQueryCorrectionLabel
|
|
53
|
-
).toBeVisible();
|
|
54
|
-
await expect(
|
|
55
|
-
didYouMean.didYouMeanAutomaticQueryCorrectionLabel
|
|
56
|
-
).toContainText(expectedCorrectedQuery);
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
test.describe('with queryCorrectionMode set to "next"', () => {
|
|
61
|
-
test.use({
|
|
62
|
-
didYouMeanData,
|
|
63
|
-
options: {
|
|
64
|
-
disableQueryAutoCorrection: false,
|
|
65
|
-
queryCorrectionMode: 'next',
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
test('should display the didYouMean component and send the analytics', async ({
|
|
69
|
-
didYouMean,
|
|
70
|
-
search,
|
|
71
|
-
}) => {
|
|
72
|
-
await search.mockSearchWithDidYouMeanNextResponse(didYouMeanNextData);
|
|
73
|
-
const expectedUaRequestPromise =
|
|
74
|
-
didYouMean.waitForDidYouMeanAutomaticAnalytics({
|
|
75
|
-
queryText: expectedCorrectedQuery,
|
|
76
|
-
});
|
|
77
|
-
await search.triggerSearchWithInput(expectedOriginalQuery);
|
|
78
|
-
await expectedUaRequestPromise;
|
|
79
|
-
|
|
80
|
-
await expect(didYouMean.didYouMeanNoResultsLabel).toBeVisible();
|
|
81
|
-
await expect(didYouMean.didYouMeanNoResultsLabel).toContainText(
|
|
82
|
-
expectedOriginalQuery
|
|
83
|
-
);
|
|
84
|
-
await expect(
|
|
85
|
-
didYouMean.didYouMeanAutomaticQueryCorrectionLabel
|
|
86
|
-
).toBeVisible();
|
|
87
|
-
await expect(
|
|
88
|
-
didYouMean.didYouMeanAutomaticQueryCorrectionLabel
|
|
89
|
-
).toContainText(expectedCorrectedQuery);
|
|
90
|
-
});
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
test.describe("when we don't have an automatic did you mean query correction", () => {
|
|
95
|
-
test.describe('with queryCorrectionMode set to "legacy"', () => {
|
|
96
|
-
test.use({
|
|
97
|
-
didYouMeanData,
|
|
98
|
-
options: {
|
|
99
|
-
disableQueryAutoCorrection: true,
|
|
100
|
-
queryCorrectionMode: 'legacy',
|
|
101
|
-
},
|
|
102
|
-
});
|
|
103
|
-
test('should display the didYouMean component but not correct the query', async ({
|
|
104
|
-
didYouMean,
|
|
105
|
-
search,
|
|
106
|
-
}) => {
|
|
107
|
-
await search.mockSearchWithDidYouMeanLegacyResponse(didYouMeanData);
|
|
108
|
-
await search.triggerSearchWithInput(expectedOriginalQuery);
|
|
109
|
-
|
|
110
|
-
await expect(
|
|
111
|
-
didYouMean.didYouMeanManualCorrectionLabel
|
|
112
|
-
).toBeVisible();
|
|
113
|
-
await expect(didYouMean.applyCorrectionButton).toBeVisible();
|
|
114
|
-
await expect(didYouMean.applyCorrectionButton).toContainText(
|
|
115
|
-
expectedCorrectedQuery
|
|
116
|
-
);
|
|
117
|
-
|
|
118
|
-
const correctedSearchResponsePromise = search.waitForSearchResponse();
|
|
119
|
-
const correctedUAReponsePromise =
|
|
120
|
-
didYouMean.waitForDidYouMeanManualAnalytics({
|
|
121
|
-
queryText: expectedCorrectedQuery,
|
|
122
|
-
});
|
|
123
|
-
didYouMean.applyCorrection();
|
|
124
|
-
await correctedUAReponsePromise;
|
|
125
|
-
const searchResponse = await correctedSearchResponsePromise;
|
|
126
|
-
const correctedSearchBody = searchResponse
|
|
127
|
-
.request()
|
|
128
|
-
?.postDataJSON?.();
|
|
129
|
-
expect(correctedSearchBody?.q).toEqual(expectedCorrectedQuery);
|
|
130
|
-
});
|
|
131
|
-
});
|
|
132
|
-
|
|
133
|
-
test.describe('with queryCorrectionMode set to "next"', () => {
|
|
134
|
-
test.use({
|
|
135
|
-
didYouMeanData,
|
|
136
|
-
options: {
|
|
137
|
-
disableQueryAutoCorrection: true,
|
|
138
|
-
queryCorrectionMode: 'next',
|
|
139
|
-
},
|
|
140
|
-
});
|
|
141
|
-
test('should display the didYouMean component and send the analytics', async ({
|
|
142
|
-
didYouMean,
|
|
143
|
-
search,
|
|
144
|
-
}) => {
|
|
145
|
-
await search.mockSearchWithDidYouMeanNextResponse(didYouMeanNextData);
|
|
146
|
-
await search.triggerSearchWithInput(expectedOriginalQuery);
|
|
147
|
-
|
|
148
|
-
await expect(
|
|
149
|
-
didYouMean.didYouMeanManualCorrectionLabel
|
|
150
|
-
).toBeVisible();
|
|
151
|
-
await expect(didYouMean.applyCorrectionButton).toBeVisible();
|
|
152
|
-
await expect(didYouMean.applyCorrectionButton).toContainText(
|
|
153
|
-
expectedCorrectedQuery
|
|
154
|
-
);
|
|
155
|
-
|
|
156
|
-
const correctedSearchResponsePromise = search.waitForSearchResponse();
|
|
157
|
-
const correctedUAReponsePromise =
|
|
158
|
-
didYouMean.waitForDidYouMeanManualAnalytics({
|
|
159
|
-
queryText: expectedCorrectedQuery,
|
|
160
|
-
});
|
|
161
|
-
didYouMean.applyCorrection();
|
|
162
|
-
await correctedUAReponsePromise;
|
|
163
|
-
const searchResponse = await correctedSearchResponsePromise;
|
|
164
|
-
const correctedSearchBody = searchResponse
|
|
165
|
-
.request()
|
|
166
|
-
?.postDataJSON?.();
|
|
167
|
-
expect(correctedSearchBody?.q).toEqual(expectedCorrectedQuery);
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
});
|
|
171
|
-
|
|
172
|
-
if (useCase.value === 'search') {
|
|
173
|
-
test.describe('when we have a query trigger response', () => {
|
|
174
|
-
test.use({
|
|
175
|
-
queryTriggerData,
|
|
176
|
-
});
|
|
177
|
-
|
|
178
|
-
test('should search with the triggered query instead of the original query', async ({
|
|
179
|
-
didYouMean,
|
|
180
|
-
search,
|
|
181
|
-
}) => {
|
|
182
|
-
await search.mockSearchWithQueryTriggerResponse(queryTriggerData);
|
|
183
|
-
await search.triggerSearchWithInput(expectedOriginalQuery);
|
|
184
|
-
|
|
185
|
-
await expect(didYouMean.showingResultsForLabel).toBeVisible();
|
|
186
|
-
await expect(didYouMean.showingResultsForLabel).toContainText(
|
|
187
|
-
expectedTriggeredQuery
|
|
188
|
-
);
|
|
189
|
-
await expect(didYouMean.undoButton).toBeVisible();
|
|
190
|
-
await expect(didYouMean.undoButton).toContainText(
|
|
191
|
-
expectedOriginalQuery
|
|
192
|
-
);
|
|
193
|
-
});
|
|
194
|
-
|
|
195
|
-
test('when pressing the undo button should send the correct analytics and reset the query', async ({
|
|
196
|
-
didYouMean,
|
|
197
|
-
search,
|
|
198
|
-
}) => {
|
|
199
|
-
await search.mockSearchWithQueryTriggerResponse(queryTriggerData);
|
|
200
|
-
|
|
201
|
-
const queryTriggerCustomUAPromise =
|
|
202
|
-
didYouMean.waitForQueryTriggerCustomAnalytics({});
|
|
203
|
-
await search.triggerSearchWithInput(expectedOriginalQuery);
|
|
204
|
-
await queryTriggerCustomUAPromise;
|
|
205
|
-
|
|
206
|
-
const undoSearchResponsePromise = search.waitForSearchResponse();
|
|
207
|
-
const undoUASearchEvent = didYouMean.waitForUndoQueryAnalytics({
|
|
208
|
-
queryText: expectedOriginalQuery,
|
|
209
|
-
});
|
|
210
|
-
didYouMean.undo();
|
|
211
|
-
await undoUASearchEvent;
|
|
212
|
-
const searchResponse = await undoSearchResponsePromise;
|
|
213
|
-
const searchBody = searchResponse.request()?.postDataJSON?.();
|
|
214
|
-
expect(searchBody?.q).toEqual(expectedOriginalQuery);
|
|
215
|
-
});
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
});
|
|
219
|
-
});
|