Automerge backed Markdown editor for the Atmosphere
Something went wrong. Try again.
1.4 kB · 34 lines
TypeScript
at main
1234567891011121314151617181920212223242526272829303132333435import { describe, it, expect } from 'vitest'import { DraftReconciliationError, isDraftReconciliationError } from '../../src/automerge-markdown/errors'
describe('DraftReconciliationError', () => { it('constructs with default empty issues', () => { const err = new DraftReconciliationError('native-invariant', 'boom') expect(err.message).toBe('boom') expect(err.name).toBe('DraftReconciliationError') expect(err.reason).toBe('native-invariant') expect(err.issues).toEqual([]) })
it('constructs with provided issues', () => { const issues = [{ kind: 'unsupported' as const, message: 'bad intent' }] const err = new DraftReconciliationError('schema', 'failed', issues) expect(err.reason).toBe('schema') expect(err.issues).toBe(issues) })
it('is identified by isDraftReconciliationError', () => { const err = new DraftReconciliationError('core-spec', 'boom') expect(isDraftReconciliationError(err)).toBe(true) })
it('isDraftReconciliationError returns false for regular Error', () => { expect(isDraftReconciliationError(new Error('plain'))).toBe(false) })
it('isDraftReconciliationError returns false for non-error values', () => { expect(isDraftReconciliationError(null)).toBe(false) expect(isDraftReconciliationError('string')).toBe(false) expect(isDraftReconciliationError(undefined)).toBe(false) })})