code cleanup after reviews

This commit is contained in:
Denys Vuika
2023-02-14 13:13:31 -05:00
committed by Sheena Malhotra
parent 7c89b53928
commit cddb2a1fcf
6 changed files with 32 additions and 28 deletions

View File

@@ -32,14 +32,14 @@ import { SearchByTermAction, SearchActionTypes, SnackbarErrorAction, SnackbarAct
import { AppHookService } from '@alfresco/aca-shared';
import { map } from 'rxjs/operators';
import { SearchQueryBuilderService } from '@alfresco/adf-content-services';
import { SearchInputService } from '../search-input.service';
import { SearchNavigationService } from '../search-navigation.service';
describe('SearchInputComponent', () => {
let fixture: ComponentFixture<SearchInputComponent>;
let component: SearchInputComponent;
let actions$: Actions;
let appHookService: AppHookService;
let searchInputService: SearchInputService;
let searchInputService: SearchNavigationService;
beforeEach(() => {
TestBed.configureTestingModule({
@@ -52,7 +52,7 @@ describe('SearchInputComponent', () => {
actions$ = TestBed.inject(Actions);
fixture = TestBed.createComponent(SearchInputComponent);
appHookService = TestBed.inject(AppHookService);
searchInputService = TestBed.inject(SearchInputService);
searchInputService = TestBed.inject(SearchNavigationService);
component = fixture.componentInstance;
});
@@ -234,7 +234,7 @@ describe('SearchInputComponent', () => {
it('should exit search on click of close icon', async () => {
spyOn(searchInputService, 'isSearchRoute').and.returnValue(true);
spyOn(component, 'exitSearch').and.callThrough();
spyOn(searchInputService, 'exitSearch').and.callThrough();
spyOn(searchInputService, 'navigateBack').and.callThrough();
fixture.detectChanges();
await fixture.whenStable();
@@ -246,7 +246,7 @@ describe('SearchInputComponent', () => {
await fixture.whenStable();
expect(component.exitSearch).toHaveBeenCalled();
expect(searchInputService.exitSearch).toHaveBeenCalledWith();
expect(searchInputService.navigateBack).toHaveBeenCalledWith();
});
});
});

View File

@@ -34,7 +34,7 @@ import { Store } from '@ngrx/store';
import { Subject } from 'rxjs';
import { filter, takeUntil } from 'rxjs/operators';
import { SearchInputControlComponent } from '../search-input-control/search-input-control.component';
import { SearchInputService } from '../search-input.service';
import { SearchNavigationService } from '../search-navigation.service';
import { SearchLibrariesQueryBuilderService } from '../search-libraries-results/search-libraries-query-builder.service';
@Component({
@@ -87,7 +87,7 @@ export class SearchInputComponent implements OnInit, OnDestroy {
private router: Router,
private store: Store<AppStore>,
private appHookService: AppHookService,
public searchInputService: SearchInputService
public searchInputService: SearchNavigationService
) {
this.searchOnChange = this.config.get<boolean>('search.aca:triggeredOnChange', true);
}
@@ -116,7 +116,7 @@ export class SearchInputComponent implements OnInit, OnDestroy {
}
exitSearch() {
this.searchInputService.exitSearch();
this.searchInputService.navigateBack();
}
showInputValue() {

View File

@@ -26,35 +26,35 @@
import { TestBed } from '@angular/core/testing';
import { CoreModule } from '@alfresco/adf-core';
import { TranslateModule } from '@ngx-translate/core';
import { SearchInputService } from './search-input.service';
import { SearchNavigationService } from './search-navigation.service';
import { Router } from '@angular/router';
describe('SearchInputService', () => {
let service: SearchInputService;
describe('SearchNavigationService', () => {
let service: SearchNavigationService;
let router: Router;
beforeEach(() => {
TestBed.configureTestingModule({
imports: [TranslateModule.forRoot(), CoreModule.forRoot()]
});
service = TestBed.inject(SearchInputService);
service = TestBed.inject(SearchNavigationService);
router = TestBed.inject(Router);
});
it('should not navigate to saved route when exitSearch function is called if saved route is null', () => {
const routerNavigate = spyOn(router, 'navigate');
service.savedRoute = '';
service.exitSearch();
service.saveRoute('');
service.navigateBack();
expect(routerNavigate).not.toHaveBeenCalledWith([service.savedRoute]);
expect(routerNavigate).not.toHaveBeenCalledWith([service.previousRoute]);
});
it('should navigate to saved route when exitSearch function is called', () => {
const routerNavigate = spyOn(router, 'navigate');
service.savedRoute = '/personal-files';
service.exitSearch();
service.saveRoute('/personal-files');
service.navigateBack();
expect(routerNavigate).toHaveBeenCalledWith([service.savedRoute]);
expect(routerNavigate).toHaveBeenCalledWith([service.previousRoute]);
});
it('should navigate to Search when navigateToSearch function is called', () => {

View File

@@ -29,8 +29,12 @@ import { Router } from '@angular/router';
@Injectable({
providedIn: 'root'
})
export class SearchInputService {
savedRoute = '';
export class SearchNavigationService {
private _previousRoute = '';
get previousRoute(): string {
return this._previousRoute;
}
constructor(private router: Router) {}
@@ -38,17 +42,17 @@ export class SearchInputService {
return this.router.url.includes('/search');
}
saveRoute(route: string) {
this.savedRoute = route;
saveRoute(route: string): void {
this._previousRoute = route;
}
exitSearch() {
if (this.savedRoute.length > 0) {
this.router.navigate([this.savedRoute]);
navigateBack(): void {
if (this.previousRoute) {
this.router.navigate([this.previousRoute]);
}
}
navigateToSearch() {
navigateToSearch(): void {
this.saveRoute(this.router.url);
this.router.navigate(['/search']);
}

View File

@@ -2,7 +2,7 @@
<mat-icon title="{{'APP.TOOLTIPS.OPTIONS_SETTINGS' | translate}}">apps</mat-icon>
</button>
<mat-menu #menu="matMenu" xPosition="before">
<div mat-menu-item [routerLink]="['/profile']" title="{{'APP.TOOLTIPS.MY_PROFILE' | translate}}">
<div *ngIf="displayName" mat-menu-item [routerLink]="['/profile']" title="{{'APP.TOOLTIPS.MY_PROFILE' | translate}}">
<mat-icon>account_circle</mat-icon>
<span>{{ displayName }}</span>
</div>

View File

@@ -15,7 +15,7 @@ import { ContentApiService } from '@alfresco/aca-shared';
encapsulation: ViewEncapsulation.None
})
export class NavigationMenuComponent implements OnInit {
displayName = 'Unknown user';
displayName = '';
constructor(private contentApi: ContentApiService) {}