Javascript 自定义测试函数-JS
我想创建一个如下所示的函数。Javascript 自定义测试函数-JS,javascript,typescript,Javascript,Typescript,我想创建一个如下所示的函数。 这是jest的预期功能。我想用Javascript创建这个函数 这能行吗 let type = 'apple' expect(type).toBe('apple') //pass a string to "expect" function and it checks with 'toBe' function if the string is similar 更新:我知道我们可以做下面这样的事情,但我不能做这样的事情“expect().t
这是jest的预期功能。我想用Javascript创建这个函数
这能行吗
let type = 'apple'
expect(type).toBe('apple')
//pass a string to "expect" function and it checks with 'toBe' function if the string is similar
更新:我知道我们可以做下面这样的事情,但我不能做这样的事情“expect().toBe()”
这只是一个小例子,你可能会去。您希望
expect
是一个返回对象的函数,其中一个键toBe
是一个函数。在本例中,我只是让它返回true
或false
,这取决于实际值是否等于预期值
功能预期(实际){
返回{
toBe:功能(预期){
返回实际值===预期值;
}
}
}
console.log(
期望(“foo”)。托比(“foo”)
);
console.log(
期望(“foo”)。托比(“bar”)
);代码>这只是一个很小的示例,说明您可能要做什么。您希望expect
是一个返回对象的函数,其中一个键toBe
是一个函数。在本例中,我只是让它返回true
或false
,这取决于实际值是否等于预期值
功能预期(实际){
返回{
toBe:功能(预期){
返回实际值===预期值;
}
}
}
console.log(
期望(“foo”)。托比(“foo”)
);
console.log(
期望(“foo”)。托比(“bar”)
);代码>建议不要重新发明轮子,但既然你已经做到了,下面是我的简单建议:
- 函数
expect()
- 函数
toBe()
将第二件事
(也称为预期)作为参数,对第一件事
使用某种形式的比较器,并返回布尔值
- 为简单起见,比较器可以是
==
基于这三个元素,您重新发明的expect()
函数可以采用以下形状:
函数预期(实际){
返回{
toBe:功能(预期){
返回实际值==预期值;
}
}
}
- 对于的实际实现,实际实现比这个答案稍微复杂一些
- “匹配者”(他们称之为
toBe()
,toEqual()
,等等)可以
建议不要重新发明轮子,但既然你已经做到了,下面简单介绍一下我的建议:
- 函数
expect()
- 函数
toBe()
将第二件事
(也称为预期)作为参数,对第一件事
使用某种形式的比较器,并返回布尔值
- 为简单起见,比较器可以是
==
基于这三个元素,您重新发明的expect()
函数可以采用以下形状:
函数预期(实际){
返回{
toBe:功能(预期){
返回实际值==预期值;
}
}
}
- 对于的实际实现,实际实现比这个答案稍微复杂一些
- “匹配者”(他们称之为
toBe()
,toEqual()
,等等)可以
是的,这是可行的。到目前为止你试过什么?这个函数的期望输出是什么?Jest是用JavaScript编写的,所以是的,它当然是可行的。@Nick请检查更新。如何向函数中添加模块?是的,这是可行的。到目前为止你试过什么?这个函数的期望输出是什么?Jest是用JavaScript编写的,所以是的,它当然是可行的。@Nick请检查更新。如何向函数中添加模块?
var Expect = Expect || {};
Expect.String = function() {
var toBe = "tobe";
var toBe = function() {
console.log("toBE function");
};
return {
toBe: toBe
}
}()
Expect.String.toBe(); // this will log "toBe function"