Неожиданная непокрытая строка в юнит-тестах jest - PullRequest
0 голосов
/ 12 июля 2020

Я пишу шутливые модульные тесты для простого компонента

import { Component, OnInit, Input } from '@angular/core';
import { BreadCrumbItem } from '../../models/breadcrumb.interface';

@Component({
    selector: 'app-header',
    templateUrl: './header.component.html',
    styleUrls: ['./header.component.scss']
})
export class HeaderComponent implements OnInit {

    @Input() breadCrumbItems: Array<BreadCrumbItem>;

    @Input() title;

    @Input() showSearchBox;

    @Input() showCreateButton;

    constructor() { }

    ngOnInit() {
    }

}

модульный тест

it('should display correct breadcrumb', () => {
        component.breadCrumbItems = [
            { path: 'test1', label: 'TEST1' },
            { path: 'test2', label: 'TEST2' },
            { path: 'test3', label: 'TEST3' }
        ];
        fixture.detectChanges();
        let breadcrumbs = fixture.debugElement.queryAll(By.css('breadcrumb-item '));

        // check that ngFor contain at least one element
        expect(breadcrumbs.length).toEqual(3);

        // check label of first breadcrumb item
        expect(breadcrumbs[0].nativeElement.querySelector('span').textContent).toEqual('TEST1');
    });

Когда я проверяю тестовое покрытие,

@Input() breadCrumbItems: Array<BreadCrumbItem>; 

отображается как открытая ветка

введите описание изображения здесь

Может ли кто-нибудь помочь мне, как решить эту проблему

Из-за этого мой набор тестов не работает, так как порог покрытия настроен как 80.

...