我有这条线需要用玩笑来测试
export const matchUriRE = /^([^:]*):([^:]*):(.*)$/;
如何测试? 提前致谢。
答案 0 :(得分:5)
我知道这个问题现在已经很老了,我甚至不知道在提出问题时是否已经存在以下解决方案,但是我认为 Jest 最多的方式是:< / p>
it('matches URI', () => {
const uriRegEx = /^([^:]*):([^:]*):(.*)$/;
const uri = 'http://google.com:4443/';
expect(uri).toMatch(uriRegEx);
});
如果出现故障,可能还会产生更具描述性的错误消息。
进一步的参考:https://jestjs.io/docs/en/expect#tomatchregexporstring
答案 1 :(得分:2)
您只需要将导出的const导入到您的测试文件中。试试这个:
regexp.js
export const matchUriRE = /^([^:]*):([^:]*):(.*)$/;
regexp.spec.js
import { matchUriRE } from './regexp';
describe('RegExp: URI', function(){
it('should match the expected URI', function(){
// include all the various cases to test the regexp against here
// example:
const uri = 'http://google.com:4443/';
expect(matchUriRE.test(uri)).toBe(true);
});
});
答案 2 :(得分:1)
if (typeof fields["emailid"] !== "undefined") {
var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
if (!pattern.test(fields["emailid"])) {
formIsValid = false;
errors["emailid"] = "*Please enter valid email-ID.";
}
}