A helper module for applying different environment types for use in unit tests.
circe install environment-mocker
import {EnvironmentType} from '@fc3/enums';
import EnvironmentMocker from '@fc3/environment-mocker';
EnvironmentMocker.mock(EnvironmentType.PRODUCTION, () => {
// Code that runs here will see NODE_ENV === 'production'
});
const promise = EnvironmentType.mockAsync(EnvironmentType.PRODUCTION, () => {
// You should return a promise from here.
// Any code that runs before the promise resolves will see
// NODE_ENV === 'production'
return new Promise((resolve, reject) => {
console.log(process.env.NODE_ENV);
// "production"
setTimeout(resolve, 1000);
});
});
promise.then(() => {
console.log(process.env.NODE_ENV);
// "development"
});