[Guided onboarding] Update solution guide configs (#141233)

This commit is contained in:
Alison Goryachev 2022-09-21 12:07:18 -04:00 committed by GitHub
parent fdbf462c0b
commit 5fe44708a6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 24 additions and 62 deletions

View file

@ -80,7 +80,7 @@ export const StepTwo = (props: StepTwoProps) => {
>
<EuiButton
onClick={async () => {
await guidedOnboardingApi?.completeGuideStep('search', 'search_experience');
await guidedOnboardingApi?.completeGuideStep('search', 'browse_docs');
}}
>
Complete step 2

View file

@ -27,8 +27,8 @@ export const observabilityConfig: GuideConfig = {
],
},
{
id: 'rules',
title: 'Customize your alerting rules',
id: 'view_dashboard',
title: 'View Kubernetes metrics',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',
@ -36,35 +36,8 @@ export const observabilityConfig: GuideConfig = {
],
},
{
id: 'infrastructure',
title: 'View infrastructure details',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',
'Vivamus pretium, elit dictum lacinia aliquet, libero nibh dictum enim, a rhoncus leo magna in sapien.',
],
},
{
id: 'explore',
title: 'Explore Discover and Dashboards',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',
'Vivamus pretium, elit dictum lacinia aliquet, libero nibh dictum enim, a rhoncus leo magna in sapien.',
],
},
{
id: 'tour',
title: 'Tour Observability',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',
'Vivamus pretium, elit dictum lacinia aliquet, libero nibh dictum enim, a rhoncus leo magna in sapien.',
],
},
{
id: 'do_more',
title: 'Do more with Observability',
id: 'tour_observability',
title: 'Tour Elastic Observability',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',

View file

@ -30,8 +30,8 @@ export const searchConfig: GuideConfig = {
},
},
{
id: 'search_experience',
title: 'Build a search experience',
id: 'browse_docs',
title: 'Browse your documents',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',
@ -43,17 +43,8 @@ export const searchConfig: GuideConfig = {
},
},
{
id: 'optimize',
title: 'Optimize your search relevance',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',
'Vivamus pretium, elit dictum lacinia aliquet, libero nibh dictum enim, a rhoncus leo magna in sapien.',
],
},
{
id: 'review',
title: 'Review your search analytics',
id: 'search_experience',
title: 'Build a search experience',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',

View file

@ -49,14 +49,5 @@ export const securityConfig: GuideConfig = {
'Vivamus pretium, elit dictum lacinia aliquet, libero nibh dictum enim, a rhoncus leo magna in sapien.',
],
},
{
id: 'do_more',
title: 'Do more with Elastic Security',
descriptionList: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
'Nullam ligula enim, malesuada a finibus vel, cursus sed risus.',
'Vivamus pretium, elit dictum lacinia aliquet, libero nibh dictum enim, a rhoncus leo magna in sapien.',
],
},
],
};

View file

@ -13,11 +13,12 @@ import { firstValueFrom, Subscription } from 'rxjs';
import { API_BASE_PATH } from '../../common';
import { ApiService } from './api';
import { GuidedOnboardingState } from '..';
import { guidesConfig } from '../constants/guides_config';
const searchGuide = 'search';
const firstStep = 'add_data';
const secondStep = 'search_experience';
const lastStep = 'review';
const firstStep = guidesConfig[searchGuide].steps[0].id;
const secondStep = guidesConfig[searchGuide].steps[1].id;
const lastStep = guidesConfig[searchGuide].steps[2].id;
describe('GuidedOnboarding ApiService', () => {
let httpClient: jest.Mocked<HttpSetup>;

View file

@ -6,26 +6,32 @@
* Side Public License, v 1.
*/
import { guidesConfig } from '../constants/guides_config';
import { getNextStep, isLastStep } from './helpers';
const searchGuide = 'search';
const firstStep = guidesConfig[searchGuide].steps[0].id;
const secondStep = guidesConfig[searchGuide].steps[1].id;
const lastStep = guidesConfig[searchGuide].steps[2].id;
describe('GuidedOnboarding ApiService helpers', () => {
// this test suite depends on the guides config
describe('isLastStepActive', () => {
it('returns true if the passed params are for the last step', () => {
const result = isLastStep('search', 'review');
const result = isLastStep(searchGuide, lastStep);
expect(result).toBe(true);
});
it('returns false if the passed params are not for the last step', () => {
const result = isLastStep('search', 'add_data');
const result = isLastStep(searchGuide, firstStep);
expect(result).toBe(false);
});
});
describe('getNextStep', () => {
it('returns id of the next step', () => {
const result = getNextStep('search', 'add_data');
expect(result).toEqual('search_experience');
const result = getNextStep(searchGuide, firstStep);
expect(result).toEqual(secondStep);
});
it('returns undefined if the params are not part of the config', () => {
@ -34,7 +40,7 @@ describe('GuidedOnboarding ApiService helpers', () => {
});
it(`returns undefined if it's the last step`, () => {
const result = getNextStep('search', 'review');
const result = getNextStep(searchGuide, lastStep);
expect(result).toBeUndefined();
});
});