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

Я пытаюсь изменить значение моей конфигурации в памяти для тестирования, я пытался добавить process.env.ALLOW_CONFIG_MUTATIONS=true в нескольких местах приложения, а также через командную строку и мой файл .env.

Метод config.util.getEnv('ALLOW_CONFIG_MUTATION') всегда возвращает неопределенное значение.

Я также пытался использовать importFresh и MockRequest в соответствии с примерами, которые я видел в Интернете, ни один из которых не позволяет мне изменять конфигурацию в памяти, а затем сбрасывать значение позже.

У кого-нибудь есть идеи по этому поводу?

Обновление : вот пример того, что я пытаюсь выполнить

const config = require (config);
const app = new App(config)

it(`does a thing with base config`, () => {  ...  }

it('does a thing with modified config, () => {  
    // here i would need to modify my config value and
    // have it change the original config that's currently in 
    // application memory

    config = newConfig  

    expect(config.get('newValues')).to.equal(true)
}

Спасибо!

1 Ответ

0 голосов
/ 27 июня 2018

Если это тот же самый конфигурационный модуль, который я использовал (я думаю, что есть), то добавьте custom-environment-variables.js ИЛИ test.js с вашим тестовым конфигурацией.

test.js потребуется ENV=test для работы, а переменным пользовательской среды нужно что-то вроде (для Mac и NPM) $ npm run funcTest -> yarn serverRunning && NODE_ENV=test wdio wdio.conf.js.

JSON будет выглядеть примерно так:

{
  test: 'Value'
}
...