From 11e2bfb3a474d62940299388572791cc55076bda Mon Sep 17 00:00:00 2001 From: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Date: Thu, 13 May 2021 14:18:21 -0400 Subject: [PATCH] Gracefully handle malformed index patterns on role management pages (#99918) (#100052) Co-authored-by: Larry Gregory --- .../public/management/roles/edit_role/edit_role_page.test.tsx | 3 ++- .../public/management/roles/edit_role/edit_role_page.tsx | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.test.tsx b/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.test.tsx index 5df73f7f8ec4e..b8963ea5a76e3 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.test.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.test.tsx @@ -143,7 +143,8 @@ function getProps({ rolesAPIClient.getRole.mockResolvedValue(role); const indexPatterns = dataPluginMock.createStartContract().indexPatterns; - indexPatterns.getTitles = jest.fn().mockResolvedValue(['foo*', 'bar*']); + // `undefined` titles can technically happen via import/export or other manual manipulation + indexPatterns.getTitles = jest.fn().mockResolvedValue(['foo*', 'bar*', undefined]); const indicesAPIClient = indicesAPIClientMock.create(); diff --git a/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx b/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx index f810cd2079d16..0f49aaf48c394 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx @@ -125,7 +125,7 @@ function useIndexPatternsTitles( fatalErrors.add(err); throw err; }) - .then(setIndexPatternsTitles); + .then((titles) => setIndexPatternsTitles(titles.filter(Boolean))); }, [fatalErrors, indexPatterns, notifications]); return indexPatternsTitles;