d7fb7b7a7b
Build & Deploy / Build & Push Docker Image (push) Failing after 47s
Build & Deploy / Deploy to VPS (push) Has been skipped
Test / API Unit Tests (push) Failing after 5m4s
Test / Marketplace Unit Tests (push) Failing after 4m55s
Test / Admin Unit Tests (push) Successful in 9m37s
Test / Dashboard Unit Tests (push) Successful in 9m37s
Test / API Integration Tests (push) Successful in 9m54s
28 lines
1.2 KiB
TypeScript
28 lines
1.2 KiB
TypeScript
import { destinationRegistry, resolveDestination } from '@/lib/integrations/destinations';
|
|
import { describe, expect, it } from 'vitest';
|
|
|
|
describe('destination registry', () => {
|
|
it('activates only the safe local demo destination', () => {
|
|
const registry = destinationRegistry({ demoSubmissionEnabled: true, demoMode: 'local' });
|
|
expect(registry['book-demo'].status).toBe('active');
|
|
expect(registry['contact-sales'].status).toBe('blocked');
|
|
expect(registry['sign-in'].status).toBe('active');
|
|
expect(registry.pricing.status).toBe('placeholder');
|
|
});
|
|
|
|
it('fails the demo destination closed when integration is disabled', () => {
|
|
const registry = destinationRegistry({ demoSubmissionEnabled: false, demoMode: 'blocked' });
|
|
expect(registry['book-demo'].status).toBe('blocked');
|
|
});
|
|
|
|
it('resolves approved localized placeholder routes without guessing external URLs', () => {
|
|
expect(
|
|
resolveDestination('privacy', 'fr', { demoSubmissionEnabled: false, demoMode: 'blocked' })
|
|
.href,
|
|
).toBe('/fr/confidentialite');
|
|
expect(
|
|
resolveDestination('sign-in', 'en', { demoSubmissionEnabled: false, demoMode: 'blocked' }).href,
|
|
).toBe('/en/sign-in');
|
|
});
|
|
});
|