Проверьте простую функцию с шуткой - PullRequest
0 голосов
/ 18 октября 2019

Я хочу протестировать одну простую функцию с помощью Jest:

// src > filterByTerm.js
function filterByTerm(inputArr, searchTerm) {
    if (!searchTerm) throw Error("searchTerm cannot be empty");
    if (!inputArr.length) throw Error("inputArr cannot be empty"); // new line

    const regex = new RegExp(searchTerm, "i");
    return inputArr.filter(function(arrayElement) {
      return arrayElement.url.match(regex);
    });
 }
 module.exports = filterByTerm;

 // filterByTerm.spec.js

const filterByTerm = require("../src/filterByTerm");

describe("Filter function", () => {

   test("it should output error", () => {
        const input = [
          { id: 1, url: "https://www.url1.dev" },
          { id: 2, url: "https://www.url2.dev" },
          { id: 3, url: "https://www.link3.dev" }
        ];
        expect(filterByTerm(input, "")).toThrowError();
      });
 });

Мой вопрос: почему этот тест не проходит? как отловить ошибку от Jest?

Спасибо

1 Ответ

0 голосов
/ 18 октября 2019

Я считаю, что вы должны сделать

if (!searchTerm) throw new Error("searchTerm cannot be empty");

и

expect(filterByTerm(input, "")).toThrowError("searchTerm cannot be empty");

Вы можете прочитать далее здесь .

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