From c8b922158893e331d3d3f02a67f3bcab407c14b9 Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Mon, 26 Aug 2024 10:49:39 +0200
Subject: [PATCH] OZG-6301 OZG-6525 fix empty result list

---
 .../src/lib/pipe/to-embedded-resource.pipe.spec.ts        | 8 +++++++-
 .../tech-shared/src/lib/pipe/to-embedded-resource.pipe.ts | 5 +++--
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.spec.ts b/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.spec.ts
index a487373093..eef4a6cad0 100644
--- a/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.spec.ts
+++ b/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.spec.ts
@@ -23,7 +23,7 @@
  */
 import { getEmbeddedResource } from '@ngxp/rest';
 import { DummyListLinkRel } from 'libs/tech-shared/test/dummy';
-import { createDummyListResource } from 'libs/tech-shared/test/resource';
+import { createDummyListResource, toResource } from 'libs/tech-shared/test/resource';
 import { ListResource } from '../resource/resource.util';
 import { EMPTY_ARRAY } from '../tech.util';
 import { ToEmbeddedResourcesPipe } from './to-embedded-resource.pipe';
@@ -55,5 +55,11 @@ describe('ToEmbeddedResourcesPipe', () => {
 
       expect(result).toBe(EMPTY_ARRAY);
     });
+
+    it('should return empty array non existing resources', () => {
+      const result: unknown[] = pipe.transform(toResource({}), DummyListLinkRel.LIST);
+
+      expect(result).toBe(EMPTY_ARRAY);
+    });
   });
 });
diff --git a/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.ts b/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.ts
index 77e5194518..f310e40a99 100644
--- a/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.ts
+++ b/alfa-client/libs/tech-shared/src/lib/pipe/to-embedded-resource.pipe.ts
@@ -23,7 +23,7 @@
  */
 import { Pipe, PipeTransform } from '@angular/core';
 import { Resource, getEmbeddedResource } from '@ngxp/rest';
-import { isNil } from 'lodash-es';
+import { isNil, isNull } from 'lodash-es';
 import { LinkRelationName } from '../resource/resource.model';
 import { ListResource } from '../resource/resource.util';
 import { EMPTY_ARRAY } from '../tech.util';
@@ -32,6 +32,7 @@ import { EMPTY_ARRAY } from '../tech.util';
 export class ToEmbeddedResourcesPipe implements PipeTransform {
   transform(listResource: ListResource, linkRel: LinkRelationName): Resource[] {
     if (isNil(listResource) || isNil(linkRel)) return EMPTY_ARRAY;
-    return getEmbeddedResource(listResource, linkRel);
+    const embeddedReources: Resource[] = getEmbeddedResource(listResource, linkRel);
+    return isNull(embeddedReources) ? EMPTY_ARRAY : embeddedReources;
   }
 }
-- 
GitLab