diff --git a/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.test.tsx b/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.test.tsx index 2519a183c2d1c6..d00ef999617e0a 100644 --- a/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.test.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.test.tsx @@ -39,6 +39,7 @@ describe('EngineRouter', () => { ...mockEngineValues, dataLoading: false, engineNotFound: false, + isMetaEngine: false, myRole: {}, }; const actions = { @@ -167,22 +168,26 @@ describe('EngineRouter', () => { expect(wrapper.find(ApiLogs)).toHaveLength(1); }); - it('renders a source engines view', () => { - setMockValues({ ...values, myRole: { canViewMetaEngineSourceEngines: true } }); + it('renders a search ui view', () => { + setMockValues({ ...values, myRole: { canManageEngineSearchUi: true } }); const wrapper = shallow(); - expect(wrapper.find(SourceEngines)).toHaveLength(1); + expect(wrapper.find(SearchUI)).toHaveLength(1); }); - it('renders a search ui view', () => { - setMockValues({ ...values, myRole: { canManageEngineSearchUi: true } }); + it('renders a source engines view', () => { + setMockValues({ + ...values, + myRole: { canViewMetaEngineSourceEngines: true }, + isMetaEngine: true, + }); const wrapper = shallow(); - expect(wrapper.find(SearchUI)).toHaveLength(1); + expect(wrapper.find(SourceEngines)).toHaveLength(1); }); it('renders a crawler view', () => { - setMockValues({ ...values, myRole: { canViewEngineCrawler: true } }); + setMockValues({ ...values, myRole: { canViewEngineCrawler: true }, isMetaEngine: false }); const wrapper = shallow(); expect(wrapper.find(CrawlerRouter)).toHaveLength(1); diff --git a/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.tsx b/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.tsx index 2d1bd32a0fff5c..8b0e6428babf52 100644 --- a/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_router.tsx @@ -66,7 +66,7 @@ export const EngineRouter: React.FC = () => { } = useValues(AppLogic); const { engineName: engineNameFromUrl } = useParams() as { engineName: string }; - const { engineName, dataLoading, engineNotFound } = useValues(EngineLogic); + const { engineName, dataLoading, engineNotFound, isMetaEngine } = useValues(EngineLogic); const { setEngineName, initializeEngine, pollEmptyEngine, stopPolling, clearEngine } = useActions( EngineLogic ); @@ -120,12 +120,12 @@ export const EngineRouter: React.FC = () => { )} - {canViewMetaEngineSourceEngines && ( + {canViewMetaEngineSourceEngines && isMetaEngine && ( )} - {canViewEngineCrawler && ( + {canViewEngineCrawler && !isMetaEngine && (