test: синхронизировать electron-smoke с smoke.test.ts (login реализован)
electron-smoke ассертил login/getAccessToken → NotImplemented (старый скелет Story 1.2), но login реализован (flow-executor Story 11.2): в stub-окружении даёт AuthV2Error(network_error)/(wallet_locked). Node/browser smoke уже обновлены — ждут любой валидный код AuthV2ErrorCode. Привёл electron к тому же; конкретный код не пиннингуем. Это была единственная упавшая из 6 проверок electron. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -45,13 +45,17 @@ async function run() {
|
|||||||
const lockedErr = await sdk.signDocument({ payload: 'x' }).then(() => null, e => e)
|
const lockedErr = await sdk.signDocument({ payload: 'x' }).then(() => null, e => e)
|
||||||
assert(lockedErr instanceof sdk.AuthV2Error && lockedErr.code === sdk.AuthV2ErrorCode.WalletLocked, 'WalletLocked при запертом кошельке')
|
assert(lockedErr instanceof sdk.AuthV2Error && lockedErr.code === sdk.AuthV2ErrorCode.WalletLocked, 'WalletLocked при запертом кошельке')
|
||||||
|
|
||||||
// login/getAccessToken: скелет Story 1.2 — типизированная not_implemented (см. smoke.test.ts)
|
// login/getAccessToken реализованы (вход 1.7 + flow-executor Story 11.2): в stub-окружении
|
||||||
|
// без живого authentik/controller дают типизированную AuthV2Error (login→network_error,
|
||||||
|
// getAccessToken→wallet_locked). Конкретный код не пиннингуем — важно, что ошибка
|
||||||
|
// типизированная и код валиден для enum'а. Синхронно со smoke.test.ts.
|
||||||
|
const errorCodes = Object.values(sdk.AuthV2ErrorCode)
|
||||||
for (const [name, call] of [
|
for (const [name, call] of [
|
||||||
['login', () => sdk.login({ issuer: 'https://coop.stub/application/o/coopid/', email: 'a@b.c', password: 'p' })],
|
['login', () => sdk.login({ issuer: 'https://coop.stub/application/o/coopid/', email: 'a@b.c', password: 'p' })],
|
||||||
['getAccessToken', () => sdk.getAccessToken()],
|
['getAccessToken', () => sdk.getAccessToken()],
|
||||||
]) {
|
]) {
|
||||||
const err = await call().then(() => null, e => e)
|
const err = await call().then(() => null, e => e)
|
||||||
assert(err instanceof sdk.AuthV2Error && err.code === sdk.AuthV2ErrorCode.NotImplemented, `${name}: типизированная not_implemented`)
|
assert(err instanceof sdk.AuthV2Error && errorCodes.includes(err.code), `${name}: типизированная AuthV2Error`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user