mirror of
https://github.com/callstack/agent-device.git
synced 2026-09-14 20:06:34 +08:00
0a8ea3a57b
* refactor: consolidate architecture ownership and client results Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix: keep selector parse chunk grouping current Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix: update moved architecture breadcrumbs Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix: enforce moved selector architecture Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix: keep selector guarantee ownership current Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs: update selector ownership references Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: Michał Pierzchała <thymikee@gmail.com> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
31 lines
1.2 KiB
TypeScript
31 lines
1.2 KiB
TypeScript
import { test } from 'vitest';
|
|
import assert from 'node:assert/strict';
|
|
import { AppError } from '../kernel/errors.ts';
|
|
import {
|
|
createRequestCanceledError,
|
|
isRequestCanceledError,
|
|
resolveRequestTrackingId,
|
|
} from './cancel.ts';
|
|
|
|
test('resolveRequestTrackingId generates unique ids for fallback seeds', () => {
|
|
const first = resolveRequestTrackingId(undefined, 42);
|
|
const second = resolveRequestTrackingId(undefined, 42);
|
|
assert.match(first, /^req:42:/);
|
|
assert.match(second, /^req:42:/);
|
|
assert.notEqual(first, second);
|
|
});
|
|
|
|
test('createRequestCanceledError includes stable cancellation reason marker', () => {
|
|
const err = createRequestCanceledError();
|
|
assert.equal(err.code, 'COMMAND_FAILED');
|
|
assert.equal(err.message, 'request canceled');
|
|
assert.equal(err.details?.reason, 'request_canceled');
|
|
assert.match(String(err.details?.hint), /canceled intentionally/);
|
|
});
|
|
|
|
test('isRequestCanceledError accepts structured and legacy cancellation errors', () => {
|
|
assert.equal(isRequestCanceledError(createRequestCanceledError()), true);
|
|
assert.equal(isRequestCanceledError(new AppError('COMMAND_FAILED', 'request canceled')), true);
|
|
assert.equal(isRequestCanceledError(new AppError('COMMAND_FAILED', 'different message')), false);
|
|
});
|