Я пытаюсь использовать sinon для выполнения модульного теста для одной из моих функций узла.
Ниже приведена фактическая функция.
import { replaceYears, getFinancialYears } from './utils/years/';
const replaceAssetFileName = () => {
const years = getFinancialYears(); // return array of years [2019, 2018, 2017]
for ( let i = 0; i < years.length; i++ ) {
replaceYears( years[ i ], 'NEWNAME' ); // replace years just replace 2019 to FY19, don't ask why a function is written for this.
}
return true;
};
Я хочу смоделировать функцию getFinancialYears
, так что только для проверки функция может вернуть только один или два года вместо 100 лет.
Я пробовал нижеприведенный тестовый пример с sinon и chai.Но все же я вижу, что функция «getFinancialYears» выдает фактический список лет вместо подделок.
it( 'We can replace file names', () => {
const stub = sinon.stub( util, 'getFinancialYears' ).callsFake(() => [ '2019' ]);
expect( replaceAssetFileName()).to.be( true );
stub.restore();
}).timeout( 20000 );