Skip to content
Snippets Groups Projects
search-result-item.component.spec.ts 1.4 KiB
Newer Older
  • Learn to ignore specific revisions
  • import { getElementFromFixture, mock } from '@alfa-client/test-utils';
    import { EventEmitter } from '@angular/core';
    
    import { ComponentFixture, TestBed } from '@angular/core/testing';
    
    OZGCloud's avatar
    OZGCloud committed
    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;
    
    OZGCloud's avatar
    OZGCloud committed
        component.title = 'Test';
    
        fixture.detectChanges();
      });
    
      it('should create', () => {
        expect(component).toBeTruthy();
      });
    
    OZGCloud's avatar
    OZGCloud committed
    
    
      describe('itemClicked', () => {
    
    OZGCloud's avatar
    OZGCloud committed
        it('should emit event', () => {
    
          component.itemClicked = <any>mock(EventEmitter);
    
    OZGCloud's avatar
    OZGCloud committed
          const button = getElementFromFixture(fixture, getDataTestIdOf('item-button'));
    
          button.click();
    
    
          expect(component.itemClicked.emit).toHaveBeenCalled();
    
    OZGCloud's avatar
    OZGCloud committed
        });
      });
    
      describe('setFocus', () => {
        it('should focus native element', () => {
          component.buttonRef.nativeElement.focus = jest.fn();
    
          component.setFocus();
    
    
    OZGCloud's avatar
    OZGCloud committed
          expect(component.buttonRef.nativeElement.focus).toHaveBeenCalled();
    
    OZGCloud's avatar
    OZGCloud committed
        });
      });