Тестирование JavaScript: реализация функции «ожидание» для тестирования кода

Вот пример функции JavaScript под названием expect, которую можно использовать для тестирования кода:

function expect(value) {
  return {
    toBe: function(expected) {
      if (value === expected) {
        console.log('Pass');
      } else {
        console.log(`Fail. Expected ${expected}, but received ${value}`);
      }
    },
    toEqual: function(expected) {
      if (JSON.stringify(value) === JSON.stringify(expected)) {
        console.log('Pass');
      } else {
        console.log(`Fail. Expected ${expected}, but received ${value}`);
      }
    },
    toContain: function(expected) {
      if (value.includes(expected)) {
        console.log('Pass');
      } else {
        console.log(`Fail. Expected ${expected} to be contained in ${value}`);
      }
    },
    // Add more testing methods as needed
  };
}

Эта функция expectвозвращает объект с различными методами тестирования, такими как toBe, toEqualи toContain. Эти методы можно использовать для сравнения value, переданного в функцию expect, с ожидаемым значением и выполнения соответствующих действий на основе результата сравнения.

Вот пример использования функции expect:

const result = add(2, 3);
expect(result).toBe(5);

В приведенном выше примере функция expectиспользуется для проверки того, равен ли resultфункции add5, используя

code>toBeметод.