diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.spec.ts b/src/app/+admin/admin-sidebar/admin-sidebar.component.spec.ts index 40539d3e13..0a79c407d8 100644 --- a/src/app/+admin/admin-sidebar/admin-sidebar.component.spec.ts +++ b/src/app/+admin/admin-sidebar/admin-sidebar.component.spec.ts @@ -2,6 +2,7 @@ import { async, ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { TranslateModule } from '@ngx-translate/core'; import { ChangeDetectionStrategy, Injector, NO_ERRORS_SCHEMA } from '@angular/core'; +import { ScriptDataService } from '../../core/data/processes/script-data.service'; import { AdminSidebarComponent } from './admin-sidebar.component'; import { MenuService } from '../../shared/menu/menu.service'; import { MenuServiceStub } from '../../shared/testing/menu-service.stub'; @@ -21,11 +22,13 @@ describe('AdminSidebarComponent', () => { let fixture: ComponentFixture; const menuService = new MenuServiceStub(); let authorizationService: AuthorizationDataService; + let scriptService; beforeEach(async(() => { authorizationService = jasmine.createSpyObj('authorizationService', { isAuthorized: observableOf(true) }); + scriptService = jasmine.createSpyObj('scriptService', { scripWithNameExistsAndCanExecute: observableOf(true) }); TestBed.configureTestingModule({ imports: [TranslateModule.forRoot(), NoopAnimationsModule, RouterTestingModule], declarations: [AdminSidebarComponent], @@ -36,9 +39,11 @@ describe('AdminSidebarComponent', () => { { provide: AuthService, useClass: AuthServiceStub }, { provide: ActivatedRoute, useValue: {} }, { provide: AuthorizationDataService, useValue: authorizationService }, + { provide: ScriptDataService, useValue: scriptService }, { provide: NgbModal, useValue: { - open: () => {/*comment*/} + open: () => {/*comment*/ + } } } ], diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.ts b/src/app/+admin/admin-sidebar/admin-sidebar.component.ts index 2a911f6097..6bd65bb85d 100644 --- a/src/app/+admin/admin-sidebar/admin-sidebar.component.ts +++ b/src/app/+admin/admin-sidebar/admin-sidebar.component.ts @@ -378,7 +378,7 @@ export class AdminSidebarComponent extends MenuComponent implements OnInit { id: 'export_metadata', parentID: 'export', active: true, - visible: authorized && metadataExportScriptExists, + visible: (authorized && metadataExportScriptExists), model: { type: MenuItemType.ONCLICK, text: 'menu.section.export_metadata', diff --git a/src/app/core/data/processes/script-data.service.ts b/src/app/core/data/processes/script-data.service.ts index 2dcc6e364d..837d1fb70e 100644 --- a/src/app/core/data/processes/script-data.service.ts +++ b/src/app/core/data/processes/script-data.service.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { getRemoteDataPayload, getSucceededRemoteData } from '../../shared/operators'; +import { getSucceededRemoteData } from '../../shared/operators'; import { DataService } from '../data.service'; import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service'; import { Store } from '@ngrx/store'; @@ -13,7 +13,7 @@ import { Script } from '../../../process-page/scripts/script.model'; import { ProcessParameter } from '../../../process-page/processes/process-parameter.model'; import { find, map, switchMap } from 'rxjs/operators'; import { URLCombiner } from '../../url-combiner/url-combiner'; -import { PaginatedList } from '../paginated-list'; +import { RemoteData } from '../remote-data'; import { MultipartPostRequest, RestRequest } from '../request.models'; import { RequestService } from '../request.service'; import { Observable } from 'rxjs'; @@ -66,17 +66,10 @@ export class ScriptDataService extends DataService