feat(store): initial release (#279)

This commit is contained in:
rahim
2026-01-02 14:41:58 +11:00
committed by GitHub
parent c9a216dd2d
commit d74e4e6701
54 changed files with 6047 additions and 66 deletions
+28
View File
@@ -0,0 +1,28 @@
import { describe, expect, it } from 'vitest';
import { isStoreError, StoreError } from '../src/errors';
describe('errors', () => {
describe('storeError', () => {
it('creates error with message', () => {
const error = new StoreError('test message');
expect(error.message).toBe('test message');
expect(error.name).toBe('StoreError');
expect(error).toBeInstanceOf(Error);
});
it('supports cause for error chaining', () => {
const cause = new Error('original error');
const error = new StoreError('wrapped error', { cause });
expect(error.message).toBe('wrapped error');
expect(error.cause).toBe(cause);
});
});
describe('type guard', () => {
it('isStoreError identifies store errors', () => {
expect(isStoreError(new StoreError('test'))).toBe(true);
expect(isStoreError(new Error('regular'))).toBe(false);
expect(isStoreError(null)).toBe(false);
});
});
});