@@ -22,11 +22,12 @@ describe(`LocaleInterceptor`, () => {
2222 let localeService : any ;
2323
2424 const languageList = [ 'en;q=1' , 'it;q=0.9' , 'de;q=0.8' , 'fr;q=0.7' ] ;
25+ const rootHref = 'https://sandbox.dspace.org/server/api' ;
2526
26- const mockLocaleService = jasmine . createSpyObj ( 'LocaleService' , {
27- getCurrentLanguageCode : jasmine . createSpy ( 'getCurrentLanguageCode' ) ,
28- getLanguageCodeList : of ( languageList ) ,
29- } ) ;
27+ const mockLocaleService = jasmine . createSpyObj ( 'LocaleService' , [
28+ 'getCurrentLanguageCode' ,
29+ ' getLanguageCodeList' ,
30+ ] ) ;
3031
3132 const mockHalEndpointService = {
3233 getRootHref : jasmine . createSpy ( 'getRootHref' ) ,
@@ -54,6 +55,8 @@ describe(`LocaleInterceptor`, () => {
5455 localeService = TestBed . inject ( LocaleService ) ;
5556
5657 localeService . getCurrentLanguageCode . and . returnValue ( of ( 'en' ) ) ;
58+ localeService . getLanguageCodeList . and . returnValue ( of ( languageList ) ) ;
59+ mockHalEndpointService . getRootHref . and . returnValue ( rootHref ) ;
5760 } ) ;
5861
5962 describe ( '' , ( ) => {
@@ -82,6 +85,29 @@ describe(`LocaleInterceptor`, () => {
8285 const lang = httpRequest . request . headers . get ( 'Accept-Language' ) ;
8386 expect ( lang ) . toBeDefined ( ) ;
8487 expect ( lang ) . toBe ( languageList . toString ( ) ) ;
88+ expect ( localeService . getLanguageCodeList ) . toHaveBeenCalledWith ( false ) ;
89+ } ) ;
90+
91+ it ( 'should ignore EPerson settings for root endpoint requests' , ( ) => {
92+ service . request ( RestRequestMethod . GET , rootHref ) . subscribe ( ( response ) => {
93+ expect ( response ) . toBeTruthy ( ) ;
94+ } ) ;
95+
96+ httpMock . expectOne ( rootHref ) ;
97+
98+ expect ( localeService . getLanguageCodeList ) . toHaveBeenCalledWith ( true ) ;
99+ } ) ;
100+
101+ it ( 'should ignore EPerson settings for eperson endpoint requests' , ( ) => {
102+ const epersonHref = `${ rootHref } /eperson/epersons/1234` ;
103+
104+ service . request ( RestRequestMethod . GET , epersonHref ) . subscribe ( ( response ) => {
105+ expect ( response ) . toBeTruthy ( ) ;
106+ } ) ;
107+
108+ httpMock . expectOne ( epersonHref ) ;
109+
110+ expect ( localeService . getLanguageCodeList ) . toHaveBeenCalledWith ( true ) ;
85111 } ) ;
86112
87113 } ) ;
0 commit comments