Jest, Ошибка связанная со строками и toBe

Рейтинг: 0Ответов: 1Опубликовано: 04.08.2023

Можете подсказать, почему код jest крашится?

function reverseString(str){
    let str2 = str.split('')
                    .sort(() => -Infinity)
                        .join('');
    console.log(str2);
    return str;
}

module.exports = reverseString;
const reverseString = require('./task_01');

test(
    'Проверяем реверс строки', () => {
        expect(reverseString('hello www')).toBe('www olleh');
    });

Идентичный тест с сайта jest с суммой завершается успехом, но вот этот крашится, указывая на 5 строку и конкретно на toBe в ней.

Debugger attached.
 FAIL  task/task_01.test.js
  ● Console

    console.log
      www olleh

      at log (task/task_01.js:5:13)

  ● Проверяем реверс строки
                                                                                                                                     
    expect(received).toBe(expected) // Object.is equality

    Expected: "www olleh"
    Received: "hello www"

      3 | test(
      4 |     "Проверяем реверс строки", () => {
    > 5 |         expect(reverseString("hello www")).toBe("www olleh");
        |                                            ^
      6 |     });

      at Object.toBe (task/task_01.test.js:5:44)

P.s. Оказалось, ошибка самого кода 1 части:

function reverseString(str){
    let reversedStr = str.split('').reverse().join('');
    console.log(reversedStr);
    return reversedStr;
}

Ответы

▲ 0Принят

Jest говорит что он ожидал строку 'www olleh', а пришло 'hello www'. Проблема в том, что функция возвращает str вместо str2