@weapp-core/api 0.3.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -368,7 +368,7 @@ test('loads user data', async () => {
368
368
  })
369
369
  ```
370
370
 
371
- `mockImplementation()` 同时保留 Promise 风格与原始 callback options 类型;`mockResolvedValue()`、同步 API、事件 API 和内部辅助方法也沿用 `wpi` 的原始契约。setup 会在每个测试前只重置已经创建的 API mock,不调用全局 `vi.resetAllMocks()`。
371
+ `mockImplementation()` 同时保留 Promise 风格与原始 callback options 类型;同步 API 仅支持 `mockReturnValue*`,Promise API 的 `mockResolvedValue*`、`mockRejectedValue*` 和 `mockReturnValue*` 均按其 Promise 返回契约约束。setup 会在每个测试前只重置已经创建的 API mock,不调用全局 `vi.resetAllMocks()`。
372
372
 
373
373
  需要独立实例时,可以直接使用 factory:
374
374
 
package/dist/vitest.d.mts CHANGED
@@ -3,7 +3,18 @@ import { Mock } from "vitest";
3
3
  //#region src/vitest/index.d.ts
4
4
  type Procedure = (...args: any[]) => any;
5
5
  type MockImplementation<T extends Procedure> = (...args: Parameters<T>) => ReturnType<T>;
6
- type ApiMockFunction<TPublic extends Procedure, TRaw extends Procedure = TPublic> = Omit<Mock<TPublic>, 'mockImplementation' | 'mockImplementationOnce' | 'withImplementation'> & TPublic & {
6
+ type MockValueMethods<TPublic extends Procedure, TMock> = ReturnType<TPublic> extends PromiseLike<unknown> ? {
7
+ mockResolvedValue: (value: Awaited<ReturnType<TPublic>>) => TMock;
8
+ mockResolvedValueOnce: (value: Awaited<ReturnType<TPublic>>) => TMock;
9
+ mockRejectedValue: (error: unknown) => TMock;
10
+ mockRejectedValueOnce: (error: unknown) => TMock;
11
+ mockReturnValue: (value: ReturnType<TPublic>) => TMock;
12
+ mockReturnValueOnce: (value: ReturnType<TPublic>) => TMock;
13
+ } : {
14
+ mockReturnValue: (value: ReturnType<TPublic>) => TMock;
15
+ mockReturnValueOnce: (value: ReturnType<TPublic>) => TMock;
16
+ };
17
+ type ApiMockFunction<TPublic extends Procedure, TRaw extends Procedure = TPublic> = Omit<Mock<TPublic>, 'mockImplementation' | 'mockImplementationOnce' | 'withImplementation' | 'mockReturnValue' | 'mockReturnValueOnce' | 'mockResolvedValue' | 'mockResolvedValueOnce' | 'mockRejectedValue' | 'mockRejectedValueOnce'> & TPublic & MockValueMethods<TPublic, Mock<TPublic>> & {
7
18
  mockImplementation: {
8
19
  (implementation: MockImplementation<TRaw>): ApiMockFunction<TPublic, TRaw>;
9
20
  (implementation: MockImplementation<TPublic>): ApiMockFunction<TPublic, TRaw>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@weapp-core/api",
3
3
  "type": "module",
4
- "version": "0.3.2",
4
+ "version": "0.3.3",
5
5
  "description": "Framework-agnostic cross-platform mini-program API proxy",
6
6
  "author": "ice breaker <1324318532@qq.com>",
7
7
  "license": "MIT",