Allow simpler tests for error.code
還沒有人認領這個 Issue。
評估
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 新手友好度
- 35/100
- Issue 類型
- 功能
- 描述清晰度
- 基本清楚
- 活躍度
- 停滯
- 技術堆疊
- javascript
- 領域
- testing-qa
研究方向
首先定位 throw() 和 reject() 斷言的入口點,以及現有的 contain() 行為。為選用訊息和提議的錯誤屬性物件新增涵蓋測試,包括 ERR_INVALID_ARG_TYPE 範例,並確認兩個斷言都保留目前的行為。
由索引模型根據 Issue 內容生成。
描述
Support plan
- is this issue currently blocking your project? (yes/no): no
- is this issue affecting a production system? (yes/no): no
Context
- node version: any
- module version: 8.0.3
- environment (e.g. node, browser, native): node
- used with (e.g. hapi application, another framework, standalone, ...):
- any other relevant information:
What problem are you trying to solve?
To test for the .code property attached to node errors (instead of .message) that are not fixed).
Currently I have to do this manually, eg. for throw():
const Code = require('code');
const expect = Code.expect;
const err = expect(() => process.chdir(42)).to.throw(TypeError);
expect(err).to.contain({ code: 'ERR_INVALID_ARG_TYPE' });
// or as one-liner
expect(expect(() => process.chdir(42)).to.throw(TypeError)).to.contain({ code: 'ERR_INVALID_ARG_TYPE' });
Do you have a new or modified API suggestion to solve the problem?
Add a third has parameter to throw() and reject(), which takes an object which is passed to a contain() test. Also make the message optional (works since it uses a string and type must be instanceof Error). Eg.
expect(() => process.chdir(42)).to.throw(TypeError, { code: 'ERR_INVALID_ARG_TYPE' });
- 主要語言
- JavaScript
- 星號
- 231
- 分支
- 75
- PR 合併指標
- 30 天內沒有已合併 PR
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 沒有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
hapijs/code 的其他 Issue
-
support
難度 3/5 1-2 天 新手友好度 38/100
-
feature
難度 5/5 一週以上 新手友好度 30/100
相似的 Issue
-
ci-install-db-tools stall-case tests flake: stalled apt-get can be killed before it logs its call未關閉effort:low model:light plan planner:opus-5-5 tests
難度 2/5 1-3 小時 新手友好度 86/100
維護者通常 1 天內回覆
-
Bug 🐞
難度 2/5 1-3 小時 新手友好度 72/100
mozilla-mobile/firefox-ios#35986 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 62/100
-
component:sight
難度 2/5 1-3 小時 新手友好度 78/100
agentic-os-org/ANOLISA#6738 · 2 則留言 ·
維護者通常 1 天內回覆
-
bug Durable Agents Observability (AI Telemetry) status: needs triage
難度 2/5 1-3 小時 新手友好度 82/100
mastra-ai/mastra#26470 · 1 則留言 ·
維護者通常 1 天內回覆