invariant.spec.ts 642 B

123456789101112131415161718
  1. import { describe, expect, it } from 'vitest'
  2. import { Context } from 'cordis'
  3. import InvariantService from '@deepseek-ai/dsh-invariants'
  4. import * as AtomicWriteInvariant from '../src/invariant.ts'
  5. describe('atomic-write invariant companion', () => {
  6. it('registers its explained empty runtime invariant', async () => {
  7. const ctx = new Context()
  8. await ctx.plugin(InvariantService)
  9. const fiber = await ctx.plugin(AtomicWriteInvariant)
  10. expect(() => {
  11. ctx.invariants.register('@deepseek-ai/dsh-atomic-write', () => {})
  12. }).toThrow(/already registered/)
  13. await fiber.dispose()
  14. await ctx.fiber.dispose()
  15. })
  16. })