From 030f9cb5c1caa2d30cb5341c64bb4b3183b5227a Mon Sep 17 00:00:00 2001 From: Jamie Klassen Date: Tue, 29 Nov 2022 09:29:47 -0500 Subject: [PATCH] backfill test for non-kubernetes error Signed-off-by: Jamie Klassen --- .../src/service/KubernetesFetcher.test.ts | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/plugins/kubernetes-backend/src/service/KubernetesFetcher.test.ts b/plugins/kubernetes-backend/src/service/KubernetesFetcher.test.ts index 3bd38a4993..8449a1716d 100644 --- a/plugins/kubernetes-backend/src/service/KubernetesFetcher.test.ts +++ b/plugins/kubernetes-backend/src/service/KubernetesFetcher.test.ts @@ -424,6 +424,40 @@ describe('KubernetesFetcher', () => { }, ); }); + it('fails on a network error', async () => { + worker.use( + rest.get('http://badurl.does.not.exist/api/v1/pods', (_, res) => + res.networkError('getaddrinfo ENOTFOUND badurl.does.not.exist'), + ), + rest.get( + 'http://badurl.does.not.exist/api/v1/services', + (req, res, ctx) => + res( + checkToken(req, ctx, 'token'), + withLabels(req, ctx, { + items: [{ metadata: { name: 'service-name' } }], + }), + ), + ), + ); + + const result = sut.fetchObjectsForService({ + serviceId: 'some-service', + clusterDetails: { + name: 'cluster1', + url: 'http://badurl.does.not.exist', + serviceAccountToken: 'token', + authProvider: 'serviceAccount', + }, + objectTypesToFetch: OBJECTS_TO_FETCH, + labelSelector: '', + customResources: [], + }); + + await expect(result).rejects.toThrow( + 'getaddrinfo ENOTFOUND badurl.does.not.exist', + ); + }); it('should respect labelSelector', async () => { worker.use( rest.get('http://localhost:9999/api/v1/pods', (req, res, ctx) =>