Я прочитал весь документ тестирования angular.io, нашел ключевые слова и использовал расширенный поиск здесь, в S.O. но не нашел ничего применимого к моему делу. Я новичок в модульном тестировании, поэтому, возможно, у меня пока нет терминологии. Если это дубликат, просто укажите мне правильное направление, пожалуйста.
Предвещая: мой вопрос
A.) Является ли angular / jasmine способным проверять динамические параметры из вызовов метода шаблона.
или еще ...
B.) Как бы вы высмеивали передачу параметров в метод во время каждого fixture.detectChanges ()?
Вот ситуация и код ошибки ...
<generic-element
*ngFor=”let recordObj of recordsArray”
[ngClass]=”doSetClasses(recordObj)”
></generic-element>
Итак, у меня есть шаблон компонента, в котором элемент динамически получает свои классы, назначенные с помощью метода. Этот метод берет объект (извлеченный из списка через директиву ngFor) и проверяет его, чтобы определить имена классов, которые он должен возвращать в шаблон. Я предпочитаю присваивать с помощью метода для действительно подробных присваиваний, потому что я стараюсь сохранить свою логику в файле машинописного текста и структуру в HTML…., Насколько это возможно, по крайней мере.
Мои очень простые модульные тесты не выполняются, потому что «Невозможно прочитать свойство 'id' из undefined» (в этом случае undefined означает, что recordObj передается в метод doSetClasses () из шаблона. Я изолировал его от этого, потому что если я просто перезаписать и удалить содержимое метода doSetClasses в тестовой среде, где все проходит, например:
beforeEach {
...
component.doSetClasses = function() { return; } as any;
}
Теперь, если я оставлю метод doSetClasses как есть, я заметил, что если я не вызываю fixture.detectChanges (), он также проходит. Поэтому моя проблема, по-видимому, заключается в следующем: методы тестирования, которые вызываются из шаблона и которые также имеют параметры, включенные в шаблон, во время цикла обнаружения изменений / дайджеста.
Мой вопрос
A.) Является ли angular / jasmine способным проверять динамические параметры из вызовов метода шаблона.
или еще ...
B.) Как бы вы посмеялись над передачей параметра в метод во время каждого fixture.detectChanges () в тестовой среде?
Опять же, если это дубликат, просто укажите мне правильное направление, пожалуйста.
Заранее спасибо за любую помощь, предложения, рекомендации. Очень ценится.