У меня есть следующий файл, который я хочу протестировать с помощью Jest, но я не знаю, как проверить, изменилось ли значение someVar с true на false. Чтобы уточнить, someVar находится в том же файле, но за пределами class

let someVar = true

class SomeClass() {
  clear() {
    someVar = false
  }
}
0
AnonymousSB 8 Ноя 2018 в 03:18

1 ответ

Лучший ответ

Хотя мне бы хотелось знать, можно ли протестировать описанный мной сценарий, я обнаружил, что это очень легко проверить, если я просто лучше напишу свой код. Вот пример

class SomeClass() {
  constructor() {
    this._someVar = false;
  }
  get someVar() { return this._someVar; }
  set someVar(value) { this._someVar = value; }
  clear() {
    this.someVar = false;
  }
}

describe('SomeClass', () => {
  it('sets someVar to false', () => {
    const someClass = new SomeClass();
    someClass.someVar = true;
    someClass.clear();
    expect(someClass.someVar).toEqual(false);
  });
})
0
AnonymousSB 8 Ноя 2018 в 00:55