javascript - 如果参数不是字符串,期望类抛出错误?
问题描述
我正在学习 Jest。我试图测试当我创建一个类并且传递的参数不是抛出错误的字符串时。
// class.js
export default class FooClass {
constructor(value) {
if (typeof value !== 'string') throw new Error('Value should be a String.')
this.value = value
}
}
// class.test.js
import FooClass from './class'
it('should throw an Error if the value is not a String', () => {
expect(new FooClass(123)).toThrowError('Value should be a String.')
})
Jest 可以通过这个测试,只是返回 Test failed。
解决方案
问题是,我调用了一个类而不是一个函数。
// class.js
export default class FooClass {
constructor(value) {
if (typeof value !== 'string') throw new Error('Value should be a String.')
this.value = value
}
}
// class.test.js
import FooClass from './class'
it('should throw an Error if the value is not a String', () => {
expect(() => new FooClass(123)).toThrowError('Value should be a String.')
})
现在它正在工作。谢谢你。
推荐阅读
- r - 如何保存与 Rstudio 中完全相同的绘图?
- javascript - 如何使用 vuejs 在新窗口中生成 HTML?
- performance - Dart:在多次调用的方法中编写嵌套函数是否有效
- c - 如何调用需要一个指向缓冲区的双指针的 Rust 函数
- python - 获取除 x,y 数据以外的散点图数据
- android - Android 11 - 按下主页按钮时触发 foregroundService 的 onTaskRemoved
- amazon-web-services - AWS QuickSight 的审核日志记录
- web-scraping - colly如何启用Js
- python - 如何构建此 Python 文件的导入语句?
- ruby-on-rails - 将 OAuth + 视图添加到 Rails API ONLY 应用程序的推荐方法?