move renditions service in the core

This commit is contained in:
Eugenio Romano
2016-09-07 12:47:47 +02:00
parent f64883cc4b
commit 8c76aed11d
3 changed files with 70 additions and 10 deletions

View File

@@ -22,3 +22,4 @@ export * from './AlfrescoTranslation.service';
export * from './AlfrescoPipeTranslate.service';
export * from './AlfrescoAuthentication.service';
export * from './AlfrescoContent.service';
export * from './renditions.service';

View File

@@ -17,7 +17,9 @@
import { it, describe, inject, beforeEach, beforeEachProviders } from '@angular/core/testing';
import { RenditionsService } from './renditions.service';
import { AlfrescoSettingsService, AlfrescoApiService, AlfrescoAuthenticationService } from 'ng2-alfresco-core';
import { AlfrescoApiService } from './AlfrescoApi.service';
import { AlfrescoSettingsService } from './AlfrescoSettings.service';
import { AlfrescoAuthenticationService } from './AlfrescoAuthentication.service';
declare let AlfrescoApi: any;
declare let jasmine: any;
@@ -25,6 +27,55 @@ declare let jasmine: any;
describe('RenditionsService', () => {
let service: any;
let fakeRedition = {
'list': {
'pagination': {
'count': 6,
'hasMoreItems': false,
'totalItems': 6,
'skipCount': 0,
'maxItems': 100
},
'entries': [{
'entry': {
'id': 'avatar',
'content': {'mimeType': 'image/png', 'mimeTypeName': 'PNG Image'},
'status': 'NOT_CREATED'
}
}, {
'entry': {
'id': 'avatar32',
'content': {'mimeType': 'image/png', 'mimeTypeName': 'PNG Image'},
'status': 'NOT_CREATED'
}
}, {
'entry': {
'id': 'doclib',
'content': {'mimeType': 'image/png', 'mimeTypeName': 'PNG Image'},
'status': 'NOT_CREATED'
}
}, {
'entry': {
'id': 'imgpreview',
'content': {'mimeType': 'image/jpeg', 'mimeTypeName': 'JPEG Image'},
'status': 'NOT_CREATED'
}
}, {
'entry': {
'id': 'medium',
'content': {'mimeType': 'image/jpeg', 'mimeTypeName': 'JPEG Image'},
'status': 'NOT_CREATED'
}
}, {
'entry': {
'id': 'pdf',
'content': {'mimeType': 'application/pdf', 'mimeTypeName': 'Adobe PDF Document'},
'status': 'NOT_CREATED'
}
}]
}
};
beforeEachProviders(() => {
return [
AlfrescoSettingsService,
@@ -44,15 +95,16 @@ describe('RenditionsService', () => {
jasmine.Ajax.uninstall();
});
it('Get redition service should call the server with the ID passed', (done) => {
service.getRenditionsByNodeId('fake-node-id').subscribe((res) => {
it('Get redition list service should call the server with the ID passed', (done) => {
service.getRenditionsListByNodeId('fake-node-id').subscribe((res) => {
expect(jasmine.Ajax.requests.mostRecent().url).toBe('http://127.0.0.1:8080/alfresco/api/-default-/public/alfresco/versions/1/nodes/fake-node-id/renditions');
done();
});
jasmine.Ajax.requests.mostRecent().respondWith({
'status': 200,
contentType: 'application/json'
contentType: 'application/json',
responseText: JSON.stringify(fakeRedition)
});
});
@@ -64,13 +116,13 @@ describe('RenditionsService', () => {
jasmine.Ajax.requests.mostRecent().respondWith({
'status': 200,
contentType: 'application/json'
contentType: 'application/json',
responseText: ''
});
});
it('Get redition service should catch the error', (done) => {
service.getRenditionsByNodeId('fake-node-id').subscribe((res) => {
service.getRenditionsListByNodeId('fake-node-id').subscribe((res) => {
}, (res) => {
done();
}
@@ -78,7 +130,8 @@ describe('RenditionsService', () => {
jasmine.Ajax.requests.mostRecent().respondWith({
'status': 403,
contentType: 'application/json'
contentType: 'application/json',
responseText: JSON.stringify(fakeRedition)
});
});
});

View File

@@ -17,7 +17,7 @@
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Rx';
import { AlfrescoApiService } from 'ng2-alfresco-core';
import { AlfrescoApiService } from './AlfrescoApi.service';
/**
* RenditionsService
@@ -31,7 +31,13 @@ export class RenditionsService {
}
getRenditionsByNodeId(nodeId: string) {
isReditionsAvailable(nodeId: string, encoding: string) {
this.apiService.getInstance().core.renditionsApi.getRenditions(nodeId).then((res) => {
console.log('res' + res);
});
}
getRenditionsListByNodeId(nodeId: string) {
return Observable.fromPromise(this.apiService.getInstance().core.renditionsApi.getRenditions(nodeId))
.catch(this.handleError);
}