Skip to content
Snippets Groups Projects
admin-user-logout-button.component.spec.ts 1.36 KiB
Newer Older
  • Learn to ignore specific revisions
  • import { dispatchEventFromFixture, MockEvent } from '@alfa-client/test-utils';
    
    import { ComponentFixture, TestBed } from '@angular/core/testing';
    import { expect } from '@jest/globals';
    import { getDataTestIdOf } from '../../../../../tech-shared/test/data-test';
    import { AdminUserLogoutButtonComponent } from './admin-user-logout-button.component';
    
    describe('AdminUserLogoutButtonComponent', () => {
      let component: AdminUserLogoutButtonComponent;
      let fixture: ComponentFixture<AdminUserLogoutButtonComponent>;
    
      const logoutButtonTestId: string = getDataTestIdOf('popup-logout-button');
    
      beforeEach(async () => {
        await TestBed.configureTestingModule({
          imports: [AdminUserLogoutButtonComponent],
        }).compileComponents();
    
        fixture = TestBed.createComponent(AdminUserLogoutButtonComponent);
        component = fixture.componentInstance;
        fixture.detectChanges();
      });
    
      it('should create', () => {
        expect(component).toBeTruthy();
      });
    
      describe('template', () => {
        describe('menu button item', () => {
          describe('output', () => {
    
            describe('clickEmitter', () => {
    
              it('should emit', () => {
                component.logout.emit = jest.fn();
    
    
                dispatchEventFromFixture(fixture, logoutButtonTestId, MockEvent.CLICK);
    
    
                expect(component.logout.emit).toHaveBeenCalled();
              });
            });
          });
        });
      });
    });