mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +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>
57 lines
2.6 KiB
TypeScript
57 lines
2.6 KiB
TypeScript
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
|
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
|
|
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
|
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';
|
|
import { APP_CONFIG } from '../../../../../../config/app-config.interface';
|
|
import { environment } from '../../../../../../environments/environment';
|
|
import { BrowseService } from '../../../../../core/browse/browse.service';
|
|
import { BrowseServiceStub } from '../../../../../shared/testing/browse-service.stub';
|
|
import { BrowseDefinitionDataService } from '../../../../../core/browse/browse-definition-data.service';
|
|
import { BrowseDefinitionDataServiceStub } from '../../../../../shared/testing/browse-definition-data-service.stub';
|
|
|
|
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
|
|
}
|
|
})],
|
|
providers: [
|
|
{ provide: APP_CONFIG, useValue: environment },
|
|
{ provide: BrowseDefinitionDataService, useValue: BrowseDefinitionDataServiceStub },
|
|
{ provide: BrowseService, useValue: BrowseServiceStub },
|
|
],
|
|
declarations: [GenericItemPageFieldComponent, MetadataValuesComponent],
|
|
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);
|
|
});
|
|
});
|