gpt4 book ai didi

javascript - 使用 Jest 检查字符串是否包含数组中的子字符串之一

转载 作者:行者123 更新时间:2023-11-29 20:42:52 24 4
gpt4 key购买 nike

expectedStrings = [
'abc',
'def',
'ghi'
]
stringToCheck = 'zyxabc'

我想用 Jest 检查 stringToCheck 是否包含 expectedStrings 的字符串之一。我见过 stringContaining 和 arrayContaining 方法,但我不确定我应该如何编写才能使测试工作。

我想用一些接近这个例子的东西:

describe('stringMatching in arrayContaining', () => {
const expected = [
expect.stringMatching(/^Alic/),
expect.stringMatching(/^[BR]ob/),
];
it('matches even if received contains additional elements', () => {
expect(['Alicia', 'Roberto', 'Evelina']).toEqual(
expect.arrayContaining(expected),
);
});
it('does not match if received does not contain expected elements', () => {
expect(['Roberto', 'Evelina']).not.toEqual(
expect.arrayContaining(expected),
);
});
});

最佳答案

我不认为组合 arrayContaining 和 stringContaining 是这里最好和最易读的方法(如果可能的话)。

只需试试这个方法:

    const numberOfMatches = expectedStrings.filter(x => stringToCheck.indexOf(x) > -1).length;
expect(numberOfMatches).toBeGreaterThan(0);

关于javascript - 使用 Jest 检查字符串是否包含数组中的子字符串之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55106378/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com