Jest - Как проверить, если функция внесла изменения в аргумент - PullRequest
0 голосов
/ 31 мая 2018

Предположим, у меня есть эта функция

function changeFooBarToOne(foo) {
  foo.bar = 1;
}

Как проверить, изменилось ли значение на 1?

describe('changeFooBarToOne', () => {
  it('modifies the bar property value to 1', () => {
    const foo = { bar: 0 };
    // call the expect and evaluate foo to equal { bar: 1 }
  })
})

1 Ответ

0 голосов
/ 31 мая 2018

Не забывайте, объекты JavaScript являются ссылочными типами.

function changeFooBarToOne(foo) {
   foo.bar = 1;
}

describe('changeFooBarToOne', () => {
  it('modifies the bar property value to 1', () => {
    const foo = { bar: 0 };
    changeFooBarToOne(foo);
    expect(foo.bar).toBe(1);
  })
})

//another way
describe('changeFooBarToOne_1', () => {
  it('modifies the bar property value to 1', () => {
    const foo = { bar: 0 };
    changeFooBarToOne(foo);
    expect(foo).toEqual({bar : 1});
  })
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...