Привет. Я хочу проверить переданный аргумент функции с помощью регулярного выражения. Дело в том, что я хочу проверить объект, который содержит сгенерированную строку со случайным символом в некоторой части
это строка для проверки
- apple<randomchar>
- banana <randomchar>
- melon <randomchar>
выше сгенерированного текста, может меняться между запустить.
Я пытался использовать этот файл sinon.match, но не смог найти подробную документацию, поэтому не уверен, что это правильный способ сделать это.
const sinon = require('sinon');
const foobar = {
foo: () => {},
fooWithObject: () => {},
};
const sinonMock = sinon.mock(foobar);
const textfoobar = (
`- apple randomid
- banana randomid
- melon randomid`
);
sinonMock
.expects('foo')
.withArgs(sinon.match(/apple.*banana.*melon/gms));
sinonMock
.expects('fooWithObject')
.withArgs({message: sinon.match(/apple.*banana.*melon/gms)});
// this works
foobar.foo(textfoobar);
// this doesn't
foobar.fooWithObject({message: textfoobar});
sinonMock.verify();
Выше ошибка результата, если я обернуть сообщение внутри объекта. Как я могу проверить объект вызова аргумента, который содержит строку, используя регулярное выражение?