mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-16 06:23:03 +00:00

* 121561 Reduce the number of browse definition requests on Item pages by reusing the navbar request for all browse indexes * Fix test issues. --------- Co-authored-by: Koen Pauwels <koen.pauwels@atmire.com>
70 lines
2.8 KiB
TypeScript
70 lines
2.8 KiB
TypeScript
import {
|
|
ChangeDetectionStrategy,
|
|
NO_ERRORS_SCHEMA,
|
|
} from '@angular/core';
|
|
import {
|
|
ComponentFixture,
|
|
TestBed,
|
|
waitForAsync,
|
|
} from '@angular/core/testing';
|
|
import { ActivatedRoute } from '@angular/router';
|
|
import {
|
|
TranslateLoader,
|
|
TranslateModule,
|
|
} from '@ngx-translate/core';
|
|
|
|
import { APP_CONFIG } from '../../../../../../config/app-config.interface';
|
|
import { environment } from '../../../../../../environments/environment';
|
|
import { BrowseService } from '../../../../../core/browse/browse.service';
|
|
import { BrowseDefinitionDataService } from '../../../../../core/browse/browse-definition-data.service';
|
|
import { ActivatedRouteStub } from '../../../../../shared/testing/active-router.stub';
|
|
import { BrowseDefinitionDataServiceStub } from '../../../../../shared/testing/browse-definition-data-service.stub';
|
|
import { BrowseServiceStub } from '../../../../../shared/testing/browse-service.stub';
|
|
import { TranslateLoaderMock } from '../../../../../shared/testing/translate-loader.mock';
|
|
import { MetadataValuesComponent } from '../../../../field-components/metadata-values/metadata-values.component';
|
|
import { mockItemWithMetadataFieldsAndValue } from '../item-page-field.component.spec';
|
|
import { GenericItemPageFieldComponent } from './generic-item-page-field.component';
|
|
|
|
let comp: GenericItemPageFieldComponent;
|
|
let fixture: ComponentFixture<GenericItemPageFieldComponent>;
|
|
|
|
const mockValue = 'test value';
|
|
const mockField = 'dc.test';
|
|
const mockLabel = 'test label';
|
|
const mockFields = [mockField];
|
|
|
|
describe('GenericItemPageFieldComponent', () => {
|
|
beforeEach(waitForAsync(() => {
|
|
TestBed.configureTestingModule({
|
|
imports: [TranslateModule.forRoot({
|
|
loader: {
|
|
provide: TranslateLoader,
|
|
useClass: TranslateLoaderMock,
|
|
},
|
|
}), GenericItemPageFieldComponent, MetadataValuesComponent],
|
|
providers: [
|
|
{ provide: APP_CONFIG, useValue: environment },
|
|
{ provide: BrowseDefinitionDataService, useValue: BrowseDefinitionDataServiceStub },
|
|
{ provide: BrowseService, useValue: BrowseServiceStub },
|
|
{ provide: ActivatedRoute, useValue: new ActivatedRouteStub() },
|
|
],
|
|
schemas: [NO_ERRORS_SCHEMA],
|
|
}).overrideComponent(GenericItemPageFieldComponent, {
|
|
set: { changeDetection: ChangeDetectionStrategy.Default },
|
|
}).compileComponents();
|
|
}));
|
|
|
|
beforeEach(waitForAsync(() => {
|
|
fixture = TestBed.createComponent(GenericItemPageFieldComponent);
|
|
comp = fixture.componentInstance;
|
|
comp.item = mockItemWithMetadataFieldsAndValue([mockField], mockValue);
|
|
comp.fields = mockFields;
|
|
comp.label = mockLabel;
|
|
fixture.detectChanges();
|
|
}));
|
|
|
|
it('should display display the correct metadata value', () => {
|
|
expect(fixture.nativeElement.innerHTML).toContain(mockValue);
|
|
});
|
|
});
|