Можно ли использовать приватные методы в классах Angular test (spe c)? - PullRequest
0 голосов
/ 02 мая 2020

У меня есть следующие настройки теста в Angular классе тестирования:

beforeEach(() => {
  fixture = TestBed.createComponent(MemberListComponent);
  component = fixture.componentInstance;
  //
  const members = new Map<string, number>();
  members.set('123', 8);
  members.set('456', 9);
  //
  component.members = members;
  fixture.detectChanges();
});

Теперь я хотел бы переместить часть между комментариями в закрытый метод, например, так:

beforeEach(() => {
  fixture = TestBed.createComponent(MemberListComponent);
  component = fixture.componentInstance;
  component.members = createMembersMap();
  fixture.detectChanges();
});

private createMembersMap() {
  const members = new Map<string, number>();
  members.set('123', 8);
  members.set('456', 9);
  return members;
}

Возможно ли это? Как? Я искал net, но все, что я нашел, было о тестировании частных методов с Angular ...

1 Ответ

0 голосов
/ 02 мая 2020

За сценой - javascript, ничего личного. Запах вызывать частные методы в тестах. Было бы лучше рассмотреть возможность изменить его на publi c или протестировать вместе с функцией, которая использует этот закрытый метод.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...