Skip to content

Commit 93949ea

Browse files
authored
Disable query assist when AI feature is off (#10851)
Signed-off-by: Owen Wang <[email protected]>
1 parent 85fe532 commit 93949ea

File tree

2 files changed

+34
-2
lines changed

2 files changed

+34
-2
lines changed

src/plugins/query_enhancements/public/query_assist/utils/create_extension.test.tsx

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ describe('CreateExtension', () => {
8989
summary: { enabled: false, branding: { label: '' } },
9090
};
9191

92-
it('should be enabled if at least one language is configured', async () => {
92+
it('should be enabled if at least one language is configured and AI features enabled', async () => {
9393
httpMock.get.mockResolvedValueOnce({ configuredLanguages: ['PPL'] });
9494
const extension = createQueryAssistExtension(
9595
coreSetupMock,
@@ -123,6 +123,36 @@ describe('CreateExtension', () => {
123123
});
124124
});
125125

126+
it('should be disabled when AI features are disabled', async () => {
127+
const mockCoreSetup = {
128+
...coreSetupMock,
129+
getStartServices: jest.fn().mockResolvedValue([
130+
{
131+
...coreMock.createStart(),
132+
uiSettings: {
133+
...uiSettingsServiceMock.createStartContract(),
134+
get: jest.fn().mockReturnValue(false),
135+
},
136+
},
137+
{},
138+
{},
139+
]),
140+
};
141+
httpMock.get.mockResolvedValueOnce({ configuredLanguages: ['PPL'] });
142+
const extension = createQueryAssistExtension(
143+
mockCoreSetup,
144+
dataMock,
145+
config,
146+
mockIsQuerySummaryCollapsed$,
147+
mockIsSummaryAgentAvailable$,
148+
mockresultSummaryEnabled$
149+
);
150+
// Wait for assistantEnabled$ to be updated
151+
await new Promise((resolve) => setTimeout(resolve, 0));
152+
const isEnabled = await firstValueFrom(extension.isEnabled$(dependencies));
153+
expect(isEnabled).toBeFalsy();
154+
});
155+
126156
it('creates data structure meta', async () => {
127157
httpMock.get.mockResolvedValueOnce({ configuredLanguages: ['PPL'] });
128158
const extension = createQueryAssistExtension(

src/plugins/query_enhancements/public/query_assist/utils/create_extension.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,9 @@ export const createQueryAssistExtension = (
133133
}
134134
},
135135
isEnabled$: () =>
136-
getAvailableLanguages$(http, data).pipe(map((languages) => languages.length > 0)),
136+
getAvailableLanguages$(http, data).pipe(
137+
map((languages) => languages.length > 0 && assistantEnabled$.value)
138+
),
137139
getComponent: (dependencies) => {
138140
// only show the component if user is on a supported language.
139141
return (

0 commit comments

Comments
 (0)