From cd587cce0437f7ba371da054f70b3864a8c16e91 Mon Sep 17 00:00:00 2001 From: Mykyta Maliarchuk Date: Mon, 13 Apr 2026 13:58:38 +0200 Subject: [PATCH] [ACS-11472] cr fixes --- .../alfresco-viewer.component.spec.ts | 27 ++++++++++++++----- .../components/alfresco-viewer.component.ts | 3 +-- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts index f67de0bdb6..a7a83948c1 100644 --- a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts +++ b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts @@ -573,38 +573,51 @@ describe('AlfrescoViewerComponent', () => { describe('versioned file with rendition', () => { const docxMimeType = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'; const xlsxMimeType = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'; + const nodeId = 'node-id'; + const previousVersionId = '1.0'; + const newVersionId = '2.0'; beforeEach(() => { spyOn(component.versionsApi, 'getVersion').and.returnValue( Promise.resolve( - new VersionEntry({ entry: new Node({ name: 'file.docx', content: new ContentInfo({ mimeType: docxMimeType }) }) }) + new VersionEntry({ + entry: new Node({ id: newVersionId, name: 'file.docx', content: new ContentInfo({ mimeType: docxMimeType }) }) + }) ) ); spyOn(renditionService, 'getNodeRendition').and.returnValue(Promise.resolve({ url: 'rendition-url', mimeType: 'application/pdf' })); - component.nodeId = 'node-id'; - component.versionId = '2.0'; + component.nodeId = nodeId; + component.versionId = previousVersionId; component.showViewer = true; }); it('should set nodeMimeType from versionData.content.mimeType, not nodeData.content.mimeType', fakeAsync(() => { spyOn(component.nodesApi, 'getNode').and.returnValue( - Promise.resolve(new NodeEntry({ entry: new Node({ name: 'file.xlsx', content: new ContentInfo({ mimeType: xlsxMimeType }) }) })) + Promise.resolve( + new NodeEntry({ entry: new Node({ id: nodeId, name: 'file.xlsx', content: new ContentInfo({ mimeType: xlsxMimeType }) }) }) + ) ); - component.ngOnChanges(getSimpleChangesWithVersion('node-id', '1.0')); + component.versionId = newVersionId; + component.ngOnChanges(getSimpleChangesWithVersion(nodeId, newVersionId, nodeId, previousVersionId)); tick(); + expect(renditionService.getNodeRendition).toHaveBeenCalledWith(nodeId, newVersionId); expect(component.mimeType).toBe('application/pdf'); expect(component.nodeMimeType).toBe(docxMimeType); })); it('should preserve nodeMimeType from versionData when nodeData has no content', fakeAsync(() => { - spyOn(component.nodesApi, 'getNode').and.returnValue(Promise.resolve(new NodeEntry({ entry: new Node({ name: 'file.docx' }) }))); + spyOn(component.nodesApi, 'getNode').and.returnValue( + Promise.resolve(new NodeEntry({ entry: new Node({ id: nodeId, name: 'file.docx' }) })) + ); - component.ngOnChanges(getSimpleChangesWithVersion('node-id', '1.0')); + component.versionId = newVersionId; + component.ngOnChanges(getSimpleChangesWithVersion(nodeId, newVersionId, nodeId, previousVersionId)); tick(); + expect(renditionService.getNodeRendition).toHaveBeenCalledWith(nodeId, newVersionId); expect(component.mimeType).toBe('application/pdf'); expect(component.nodeMimeType).toBe(docxMimeType); })); diff --git a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts index 813fa5b127..0c0b6e6716 100644 --- a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts +++ b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts @@ -315,7 +315,6 @@ export class AlfrescoViewerComponent implements OnChanges, OnInit { private async setUpNodeFile(nodeData: Node, versionData?: Version): Promise { this.canEditNode = this.contentService.hasAllowableOperations(nodeData, 'update'); let mimeType: string; - let nodeMimeType: string; let urlFileContent: string; if (versionData?.content) { @@ -323,7 +322,7 @@ export class AlfrescoViewerComponent implements OnChanges, OnInit { } else if (nodeData.content) { mimeType = nodeData.content.mimeType; } - nodeMimeType = mimeType; + const nodeMimeType = mimeType; const currentFileVersion = this.nodeEntry?.entry?.properties?.['cm:versionLabel'] ? encodeURI(this.nodeEntry?.entry?.properties['cm:versionLabel'])