diff --git a/src/app/shared/components/view-only-link-message/view-only-link-message.component.html b/src/app/shared/components/view-only-link-message/view-only-link-message.component.html index 3d786fb96..1ded54933 100644 --- a/src/app/shared/components/view-only-link-message/view-only-link-message.component.html +++ b/src/app/shared/components/view-only-link-message/view-only-link-message.component.html @@ -4,7 +4,6 @@

{{ 'common.hint.viewOnlyLinksBanner' | translate }}

- diff --git a/src/app/shared/components/view-only-link-message/view-only-link-message.component.spec.ts b/src/app/shared/components/view-only-link-message/view-only-link-message.component.spec.ts index 438914f53..eb2383f6a 100644 --- a/src/app/shared/components/view-only-link-message/view-only-link-message.component.spec.ts +++ b/src/app/shared/components/view-only-link-message/view-only-link-message.component.spec.ts @@ -1,54 +1,26 @@ -import { MockProvider } from 'ng-mocks'; - -import { PLATFORM_ID } from '@angular/core'; import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { Router } from '@angular/router'; import { provideOSFCore } from '@testing/osf.testing.provider'; -import { RouterMockBuilder, RouterMockType } from '@testing/providers/router-provider.mock'; import { ViewOnlyLinkMessageComponent } from './view-only-link-message.component'; describe('ViewOnlyLinkMessageComponent', () => { let fixture: ComponentFixture; - let component: ViewOnlyLinkMessageComponent; - let routerMock: RouterMockType; - - function setup(platformId: 'browser' | 'server' = 'browser') { - routerMock = RouterMockBuilder.create().build(); + beforeEach(() => { TestBed.configureTestingModule({ imports: [ViewOnlyLinkMessageComponent], - providers: [provideOSFCore(), MockProvider(Router, routerMock), MockProvider(PLATFORM_ID, platformId)], + providers: [provideOSFCore()], }); fixture = TestBed.createComponent(ViewOnlyLinkMessageComponent); - component = fixture.componentInstance; fixture.detectChanges(); - } - - it('should create', () => { - setup(); - - expect(component).toBeTruthy(); - }); - - it('should navigate with merged query params in browser', () => { - setup(); - - component.handleLeaveViewOnlyView(); - - expect(routerMock.navigate).toHaveBeenCalledWith([], { - queryParams: { view_only: null }, - queryParamsHandling: 'merge', - }); }); - it('should not navigate on server platform', () => { - setup('server'); - - component.handleLeaveViewOnlyView(); + it('should render the view-only links banner', () => { + const message = fixture.nativeElement.querySelector('p-message[severity="info"]'); - expect(routerMock.navigate).not.toHaveBeenCalled(); + expect(message).toBeTruthy(); + expect(fixture.nativeElement.textContent).toContain('common.hint.viewOnlyLinksBanner'); }); }); diff --git a/src/app/shared/components/view-only-link-message/view-only-link-message.component.ts b/src/app/shared/components/view-only-link-message/view-only-link-message.component.ts index 25b52ea7d..d7a68dfaa 100644 --- a/src/app/shared/components/view-only-link-message/view-only-link-message.component.ts +++ b/src/app/shared/components/view-only-link-message/view-only-link-message.component.ts @@ -1,33 +1,14 @@ import { TranslatePipe } from '@ngx-translate/core'; -import { Button } from 'primeng/button'; import { Message } from 'primeng/message'; -import { isPlatformBrowser } from '@angular/common'; -import { ChangeDetectionStrategy, Component, inject, PLATFORM_ID } from '@angular/core'; -import { Router } from '@angular/router'; +import { ChangeDetectionStrategy, Component } from '@angular/core'; @Component({ selector: 'osf-view-only-link-message', - imports: [Message, TranslatePipe, Button], + imports: [Message, TranslatePipe], templateUrl: './view-only-link-message.component.html', styleUrl: './view-only-link-message.component.scss', changeDetection: ChangeDetectionStrategy.OnPush, }) -export class ViewOnlyLinkMessageComponent { - private readonly isBrowser = isPlatformBrowser(inject(PLATFORM_ID)); - private readonly router = inject(Router); - - handleLeaveViewOnlyView(): void { - if (!this.isBrowser) { - return; - } - - this.router - .navigate([], { - queryParams: { view_only: null }, - queryParamsHandling: 'merge', - }) - .then(() => window.location.reload()); - } -} +export class ViewOnlyLinkMessageComponent {}