Используйте переменные выражения в test.each Jest - PullRequest
0 голосов
/ 26 сентября 2018

Ниже приведен мой фрагмент кода:

describe('Upper Describe,()=>{
  let value;
  beforeEach(()=>{
    value=require('testModule').value;
  });

  it.each([
    `${value}`,
  ])('test something',(value)=>{
    console.log(value);
  });
});

Здесь value выглядит как undefined.

Я думаю, это так, потому что блоки описания загружаются вначиная с значений it.each.Может кто-нибудь, пожалуйста, помогите мне с обходным путем, чтобы получить значения переменных внутри массива it.each?

Заранее спасибо !!

1 Ответ

0 голосов
/ 26 сентября 2018

Вместо передачи самого значения в it.each передайте функцию, которая возвращает значение.

Это задержит оценку значения, поэтому beforeEach может изменить то, что возвращается:

describe('Upper Describe', () => {
  let value;
  beforeEach(() => {
    value = require('testModule').value;
  });

  it.each([
    () => `${value}`,  // pass a function that returns the value
  ])('test something', (func) => {
    console.log(func());  // SUCCESS: prints value export from testModule
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...