mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-31 17:38:48 +00:00
library title case insensitive check (#4099)
This commit is contained in:
committed by
Eugenio Romano
parent
b5f9036545
commit
5396cfb662
@@ -32,6 +32,8 @@ describe('LibraryDialogComponent', () => {
|
|||||||
let fixture;
|
let fixture;
|
||||||
let component;
|
let component;
|
||||||
let alfrescoApi;
|
let alfrescoApi;
|
||||||
|
let findSitesSpy;
|
||||||
|
const findSitesResponse = { list: { entries: [] } };
|
||||||
const dialogRef = {
|
const dialogRef = {
|
||||||
close: jasmine.createSpy('close')
|
close: jasmine.createSpy('close')
|
||||||
};
|
};
|
||||||
@@ -53,18 +55,15 @@ describe('LibraryDialogComponent', () => {
|
|||||||
fixture = TestBed.createComponent(LibraryDialogComponent);
|
fixture = TestBed.createComponent(LibraryDialogComponent);
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
alfrescoApi = TestBed.get(AlfrescoApiService);
|
alfrescoApi = TestBed.get(AlfrescoApiService);
|
||||||
|
findSitesSpy = spyOn(alfrescoApi.getInstance().core.queriesApi, 'findSites');
|
||||||
|
});
|
||||||
|
|
||||||
spyOn(
|
afterEach(() => {
|
||||||
alfrescoApi.getInstance().core.queriesApi,
|
findSitesSpy.calls.reset();
|
||||||
'findSites'
|
|
||||||
).and.returnValue(
|
|
||||||
Promise.resolve({
|
|
||||||
list: { entries: [] }
|
|
||||||
})
|
|
||||||
);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should set library id automatically on title input', fakeAsync(() => {
|
it('should set library id automatically on title input', fakeAsync(() => {
|
||||||
|
findSitesSpy.and.returnValue(Promise.resolve(findSitesResponse));
|
||||||
spyOn(alfrescoApi.sitesApi, 'getSite').and.callFake(() => {
|
spyOn(alfrescoApi.sitesApi, 'getSite').and.callFake(() => {
|
||||||
return new Promise((resolve, reject) => reject());
|
return new Promise((resolve, reject) => reject());
|
||||||
});
|
});
|
||||||
@@ -79,6 +78,7 @@ describe('LibraryDialogComponent', () => {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
it('should translate library title space character to dash for library id', fakeAsync(() => {
|
it('should translate library title space character to dash for library id', fakeAsync(() => {
|
||||||
|
findSitesSpy.and.returnValue(Promise.resolve(findSitesResponse));
|
||||||
spyOn(alfrescoApi.sitesApi, 'getSite').and.callFake(() => {
|
spyOn(alfrescoApi.sitesApi, 'getSite').and.callFake(() => {
|
||||||
return new Promise((resolve, reject) => reject());
|
return new Promise((resolve, reject) => reject());
|
||||||
});
|
});
|
||||||
@@ -93,6 +93,7 @@ describe('LibraryDialogComponent', () => {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
it('should not change custom library id on title input', fakeAsync(() => {
|
it('should not change custom library id on title input', fakeAsync(() => {
|
||||||
|
findSitesSpy.and.returnValue(Promise.resolve(findSitesResponse));
|
||||||
spyOn(alfrescoApi.sitesApi, 'getSite').and.callFake(() => {
|
spyOn(alfrescoApi.sitesApi, 'getSite').and.callFake(() => {
|
||||||
return new Promise((resolve, reject) => reject());
|
return new Promise((resolve, reject) => reject());
|
||||||
});
|
});
|
||||||
@@ -128,6 +129,7 @@ describe('LibraryDialogComponent', () => {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
it('should create site when form is valid', fakeAsync(() => {
|
it('should create site when form is valid', fakeAsync(() => {
|
||||||
|
findSitesSpy.and.returnValue(Promise.resolve(findSitesResponse));
|
||||||
spyOn(alfrescoApi.sitesApi, 'createSite').and.returnValue(
|
spyOn(alfrescoApi.sitesApi, 'createSite').and.returnValue(
|
||||||
Promise.resolve()
|
Promise.resolve()
|
||||||
);
|
);
|
||||||
@@ -154,6 +156,7 @@ describe('LibraryDialogComponent', () => {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
it('should not create site when form is invalid', fakeAsync(() => {
|
it('should not create site when form is invalid', fakeAsync(() => {
|
||||||
|
findSitesSpy.and.returnValue(Promise.resolve(findSitesResponse));
|
||||||
spyOn(alfrescoApi.sitesApi, 'createSite').and.returnValue(
|
spyOn(alfrescoApi.sitesApi, 'createSite').and.returnValue(
|
||||||
Promise.resolve({})
|
Promise.resolve({})
|
||||||
);
|
);
|
||||||
@@ -172,7 +175,23 @@ describe('LibraryDialogComponent', () => {
|
|||||||
expect(alfrescoApi.sitesApi.createSite).not.toHaveBeenCalled();
|
expect(alfrescoApi.sitesApi.createSite).not.toHaveBeenCalled();
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
it('should notify when library title is already used', fakeAsync(() => {
|
||||||
|
spyOn(alfrescoApi.sitesApi, 'getSite').and.returnValue(Promise.resolve());
|
||||||
|
findSitesSpy.and.returnValue(Promise.resolve(
|
||||||
|
{ list: { entries: [ { entry: { title: 'TEST', id: 'library-id' } } ] } }
|
||||||
|
));
|
||||||
|
|
||||||
|
fixture.detectChanges();
|
||||||
|
component.form.controls.title.setValue('test');
|
||||||
|
tick(500);
|
||||||
|
flush();
|
||||||
|
fixture.detectChanges();
|
||||||
|
|
||||||
|
expect(component.libraryTitleExists).toBe(true);
|
||||||
|
}));
|
||||||
|
|
||||||
it('should notify on 409 conflict error (might be in trash)', fakeAsync(() => {
|
it('should notify on 409 conflict error (might be in trash)', fakeAsync(() => {
|
||||||
|
findSitesSpy.and.returnValue(Promise.resolve(findSitesResponse));
|
||||||
const error = { message: '{ "error": { "statusCode": 409 } }' };
|
const error = { message: '{ "error": { "statusCode": 409 } }' };
|
||||||
spyOn(alfrescoApi.sitesApi, 'createSite').and.callFake(() => {
|
spyOn(alfrescoApi.sitesApi, 'createSite').and.callFake(() => {
|
||||||
return new Promise((resolve, reject) => reject(error));
|
return new Promise((resolve, reject) => reject(error));
|
||||||
|
@@ -198,7 +198,7 @@ export class LibraryDialogComponent implements OnInit, OnDestroy {
|
|||||||
const { entries } = (await this.findLibraryByTitle(libraryTitle)).list;
|
const { entries } = (await this.findLibraryByTitle(libraryTitle)).list;
|
||||||
|
|
||||||
if (entries.length) {
|
if (entries.length) {
|
||||||
this.libraryTitleExists = entries[0].entry.title === libraryTitle;
|
this.libraryTitleExists = entries[0].entry.title.toLowerCase() === libraryTitle.toLowerCase();
|
||||||
} else {
|
} else {
|
||||||
this.libraryTitleExists = false;
|
this.libraryTitleExists = false;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user