From 6af4054931c7ca91dd909b5d1a0a47a3485cea32 Mon Sep 17 00:00:00 2001 From: Denys Vuika Date: Tue, 10 May 2016 16:57:19 +0100 Subject: [PATCH] #9 Unit tests --- .../src/components/document-list.d.ts | 2 +- .../src/components/document-list.ts | 2 +- .../test/components/document-list.spec.ts | 27 +++++++++++++++++++ 3 files changed, 29 insertions(+), 2 deletions(-) diff --git a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.d.ts b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.d.ts index 4762dfa661..f378b552c8 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.d.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.d.ts @@ -56,6 +56,6 @@ export declare class DocumentList implements OnInit, AfterViewChecked, AfterCont * @param key * @returns {string} */ - getObjectValue(target: any, key: string): string; + getObjectValue(target: any, key: string): any; setupDefaultColumns(): void; } diff --git a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.ts b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.ts index 41539a2da3..ece9bcee73 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.ts @@ -204,7 +204,7 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit * @param key * @returns {string} */ - getObjectValue(target: any, key: string): string { + getObjectValue(target: any, key: string): any { let keys = key.split('.'); key = ''; diff --git a/ng2-components/ng2-alfresco-documentlist/test/components/document-list.spec.ts b/ng2-components/ng2-alfresco-documentlist/test/components/document-list.spec.ts index 0627524030..aae9acbe5a 100644 --- a/ng2-components/ng2-alfresco-documentlist/test/components/document-list.spec.ts +++ b/ng2-components/ng2-alfresco-documentlist/test/components/document-list.spec.ts @@ -316,4 +316,31 @@ describe('DocumentList', () => { expect(documentList.getNodePath(node)).toBe('swsdp/documentLibrary/fileName'); }); + it('should return root object value', () => { + var target = { + key1: 'value1' + }; + + expect(documentList.getObjectValue(target, 'key1')).toBe('value1'); + }); + + it('should return no object value when key is missing', () => { + var target = { + key1: 'value1' + }; + expect(documentList.getObjectValue(target, 'missing')).toBeUndefined(); + }); + + it('should return nested object value', () => { + var target = { + key1: { + key2: { + key3: 'value1' + } + } + }; + + expect(documentList.getObjectValue(target, 'key1.key2.key3')).toBe('value1'); + }); + });