(serviceName: string)
| 20 | // Detect whether the real system keychain is reachable (writes a sentinel and |
| 21 | // removes it). Mirrors the plugin's own registration probe. |
| 22 | const probeReachable = (serviceName: string): Effect.Effect<boolean> => |
| 23 | Effect.gen(function* () { |
| 24 | const account = `__executor_keychain_test_probe__:${process.pid}:${Date.now()}`; |
| 25 | return yield* setPassword(serviceName, account, "probe").pipe( |
| 26 | Effect.andThen(deletePassword(serviceName, account).pipe(Effect.catch(() => Effect.void))), |
| 27 | Effect.as(true), |
| 28 | Effect.catch(() => Effect.succeed(false)), |
| 29 | ); |
| 30 | }); |
| 31 | |
| 32 | describe("keychain plugin", () => { |
| 33 | it.effect("exposes keychain metadata and registers a provider when reachable", () => |
no test coverage detected