feat: add caller connection and answer rate analytics
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import { parseAnalyticsQuery } from './caller-analytics.service.js';
|
||||
describe('analytics query boundary', () => {
|
||||
it('rejects inverted, excessive and invalid date windows', () => {
|
||||
for (const q of [{from:'bad'}, {from:'2026-01-01',to:'2026-02-01'}, {from:'2026-08-02',to:'2026-08-01'}]) expect(() => parseAnalyticsQuery(q)).toThrow();
|
||||
});
|
||||
it('rejects sort injection and mixed-grain vendor filters', () => {
|
||||
expect(() => parseAnalyticsQuery({sort:'caller; DROP TABLE x'})).toThrow();
|
||||
expect(() => parseAnalyticsQuery({view:'original',vendorGatewayId:'g'})).toThrow();
|
||||
});
|
||||
it('rejects invalid percentage and pagination values', () => {
|
||||
expect(() => parseAnalyticsQuery({connectionMin:'101'})).toThrow();
|
||||
expect(() => parseAnalyticsQuery({take:'1.5'})).toThrow();
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user