From b391212912bc0ed4c19a82452eb136408363aee4 Mon Sep 17 00:00:00 2001 From: Tyler Ohlsen Date: Fri, 21 Jul 2023 11:09:03 -0700 Subject: [PATCH] Update jsdocs; add UT Signed-off-by: Tyler Ohlsen --- .../saved_object/saved_object_loader.ts | 2 + .../saved_augment_vis/saved_augment_vis.ts | 2 + .../vis_augmenter/public/utils/utils.test.ts | 70 +++++++++++++++++++ 3 files changed, 74 insertions(+) diff --git a/src/plugins/saved_objects/public/saved_object/saved_object_loader.ts b/src/plugins/saved_objects/public/saved_object/saved_object_loader.ts index 8fed27b4542b..6c31ed0320fa 100644 --- a/src/plugins/saved_objects/public/saved_object/saved_object_loader.ts +++ b/src/plugins/saved_objects/public/saved_object/saved_object_loader.ts @@ -126,6 +126,8 @@ export class SavedObjectLoader { * @param search * @param size * @param fields + * @param hasReference Optional field to specify a reference + * @param searchFields Optional field to specify the search fields in the query * @returns {Promise} */ findAll( diff --git a/src/plugins/vis_augmenter/public/saved_augment_vis/saved_augment_vis.ts b/src/plugins/vis_augmenter/public/saved_augment_vis/saved_augment_vis.ts index 1c314c7a3172..ff3769b6190d 100644 --- a/src/plugins/vis_augmenter/public/saved_augment_vis/saved_augment_vis.ts +++ b/src/plugins/vis_augmenter/public/saved_augment_vis/saved_augment_vis.ts @@ -89,6 +89,8 @@ export class SavedObjectLoaderAugmentVis extends SavedObjectLoader { * @param search * @param size * @param fields + * @param hasReference Optional field to specify a reference + * @param searchFields Optional field to specify the search fields in the query * @returns {Promise} */ findAll( diff --git a/src/plugins/vis_augmenter/public/utils/utils.test.ts b/src/plugins/vis_augmenter/public/utils/utils.test.ts index b7124b9d2b6e..d8ebe41b087f 100644 --- a/src/plugins/vis_augmenter/public/utils/utils.test.ts +++ b/src/plugins/vis_augmenter/public/utils/utils.test.ts @@ -349,6 +349,76 @@ describe('utils', () => { } as SavedObjectOpenSearchDashboardsServicesWithAugmentVis); expect((await getAugmentVisSavedObjs(visId1, loader)).length).toEqual(2); }); + it('undefined plugin resource list has no effect', async () => { + const loader = createSavedAugmentVisLoader({ + savedObjectsClient: getMockAugmentVisSavedObjectClient([obj1, obj2]), + } as SavedObjectOpenSearchDashboardsServicesWithAugmentVis); + expect((await getAugmentVisSavedObjs(visId1, loader, undefined, undefined)).length).toEqual( + 2 + ); + }); + it('empty plugin resource list has no effect', async () => { + const loader = createSavedAugmentVisLoader({ + savedObjectsClient: getMockAugmentVisSavedObjectClient([obj1, obj2]), + } as SavedObjectOpenSearchDashboardsServicesWithAugmentVis); + expect((await getAugmentVisSavedObjs(visId1, loader, undefined, [])).length).toEqual(2); + }); + it('empty / undefined plugin resource list passes correct findAll() params', async () => { + const loader = createSavedAugmentVisLoader({ + savedObjectsClient: getMockAugmentVisSavedObjectClient([obj1, obj2]), + } as SavedObjectOpenSearchDashboardsServicesWithAugmentVis); + loader.findAll = jest.fn().mockImplementation(loader.findAll); + expect((await getAugmentVisSavedObjs(visId1, loader, undefined, [])).length).toEqual(2); + expect(loader.findAll).toHaveBeenCalledWith( + '', + 100, + [], + { + type: 'visualization', + id: visId1 as string, + }, + [] + ); + }); + it('single plugin resource is propagated to findAll()', async () => { + const loader = createSavedAugmentVisLoader({ + savedObjectsClient: getMockAugmentVisSavedObjectClient([obj1, obj2]), + } as SavedObjectOpenSearchDashboardsServicesWithAugmentVis); + loader.findAll = jest.fn().mockImplementation(loader.findAll); + expect( + (await getAugmentVisSavedObjs(visId1, loader, undefined, ['resource-1'])).length + ).toEqual(2); + expect(loader.findAll).toHaveBeenCalledWith( + 'resource-1', + 100, + [], + { + type: 'visualization', + id: visId1 as string, + }, + ['pluginResource.id'] + ); + }); + it('multiple plugin resources are propagated to findAll()', async () => { + const loader = createSavedAugmentVisLoader({ + savedObjectsClient: getMockAugmentVisSavedObjectClient([obj1, obj2]), + } as SavedObjectOpenSearchDashboardsServicesWithAugmentVis); + loader.findAll = jest.fn().mockImplementation(loader.findAll); + expect( + (await getAugmentVisSavedObjs(visId1, loader, undefined, ['resource-1', 'resource-2'])) + .length + ).toEqual(2); + expect(loader.findAll).toHaveBeenCalledWith( + 'resource-1|resource-2', + 100, + [], + { + type: 'visualization', + id: visId1 as string, + }, + ['pluginResource.id'] + ); + }); }); describe('buildPipelineFromAugmentVisSavedObjs', () => {