Size: a a a

2020 February 18

IM

Ilya Murashka in JS for testing
источник

VG

Vitalii Grygoruk in JS for testing
Аааа гребаный телефон
источник

VG

Vitalii Grygoruk in JS for testing
🤦‍♂️
источник

RP

Ruslan Panevschi in JS for testing
ребят есть проблема с jest, у меня функция выкидывает HttpException и эту же ошибку я вижу в консоле с сообщением о фэйле, что делать?
источник

RP

Ruslan Panevschi in JS for testing
источник

AP

Alexander Popov in JS for testing
а при чем тут jest?
источник

BO

Boris Osipov in JS for testing
Ruslan Panevschi
ребят есть проблема с jest, у меня функция выкидывает HttpException и эту же ошибку я вижу в консоле с сообщением о фэйле, что делать?
а что ты ожидаешь...
источник

RP

Ruslan Panevschi in JS for testing
ожидаю словить ошибку чтобы тест не фейлил
источник

RP

Ruslan Panevschi in JS for testing
он выкидывает ошибку в консоль вместо того чтобы поймать её
источник

RP

Ruslan Panevschi in JS for testing
throw new HttpException(
 Check if Books id's are correct and not a duplicate or Books exist,
 HttpStatus.NO
T_FOUND,
);

вот этот фрагмент кода пытаюсь затестить
источник

BO

Boris Osipov in JS for testing
Ruslan Panevschi
он выкидывает ошибку в консоль вместо того чтобы поймать её
давай чуть внятнее. эта ошибка бросается в коде твоего теста или приложения?
источник

RP

Ruslan Panevschi in JS for testing
приложения
источник

RP

Ruslan Panevschi in JS for testing
вот моя функция
async checkIfBooksExist(books: (string | ObjectID)[]): Promise<Book[]> {
 
const ids = books.map(it => new ObjectID(it));
 
const booksExist = await this.bookRepository.findByIds(ids, {});

 
if (ids.length !== booksExist.length) {
   
throw new HttpException(
     Check if Books id's are correct and not a duplicate or Books exist,
     HttpStatus.NO
T_FOUND,
   );
 }
 
return booksExist;
}
источник

RP

Ruslan Panevschi in JS for testing
и когда услвоие if проходит
источник

BO

Boris Osipov in JS for testing
как ты ее вызываешь в тесте?
источник

RP

Ruslan Panevschi in JS for testing
он выкидывает ошибку Check if Books id's are correct and not a duplicate or Books exist
источник

RP

Ruslan Panevschi in JS for testing
jest
   .spyOn(bookRepository, 'findByIds')
   .mockImplementation(
async () => await books);

 
await authorService.checkIfBooksExist(booksIds);

 
await expect(bookRepository.findByIds).toHaveBeenCalled();

 
await expect(() => authorService.checkIfBooksExist(booksIds)).toThrow();
});
источник

RP

Ruslan Panevschi in JS for testing
господь всемогущий
источник

RP

Ruslan Panevschi in JS for testing
спасибо всем, если что вот ответ
источник

RP

Ruslan Panevschi in JS for testing
try {
 
await authorService.checkIfBooksExist(booksIds);

 
await expect(bookRepository.findByIds).toHaveBeenCalled();
}
catch (e) {
 
await expect(e).toEqual(
   
new HttpException(
     Check if Books id's are correct and not a duplicate or Books exist,
     HttpStatus.NO
T_FOUND,
   ),
 );
}
источник