import { getElementFromFixture, mock } from '@alfa-client/test-utils'; import { EventEmitter } from '@angular/core'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { SearchResultItemComponent } from './search-result-item.component'; describe('SearchResultItemComponent', () => { let component: SearchResultItemComponent; let fixture: ComponentFixture<SearchResultItemComponent>; beforeEach(async () => { await TestBed.configureTestingModule({ imports: [SearchResultItemComponent], }).compileComponents(); fixture = TestBed.createComponent(SearchResultItemComponent); component = fixture.componentInstance; component.title = 'Test'; fixture.detectChanges(); }); it('should create', () => { expect(component).toBeTruthy(); }); describe('itemClicked', () => { it('should emit event', () => { component.itemClicked = <any>mock(EventEmitter); const button = getElementFromFixture(fixture, getDataTestIdOf('item-button')); button.click(); expect(component.itemClicked.emit).toHaveBeenCalled(); }); }); describe('setFocus', () => { it('should focus native element', () => { component.buttonRef.nativeElement.focus = jest.fn(); component.setFocus(); expect(component.buttonRef.nativeElement.focus).toHaveBeenCalled(); }); }); });