mirror of
https://github.com/lingble/chatwoot.git
synced 2025-11-01 19:48:08 +00:00
27 lines
769 B
JavaScript
27 lines
769 B
JavaScript
import * as AnalyticsEvents from '../events';
|
|
|
|
describe('Analytics Events', () => {
|
|
it('should be frozen', () => {
|
|
Object.entries(AnalyticsEvents).forEach(([, value]) => {
|
|
expect(Object.isFrozen(value)).toBe(true);
|
|
});
|
|
});
|
|
|
|
it('event names should be unique across the board', () => {
|
|
const allValues = Object.values(AnalyticsEvents).reduce(
|
|
(acc, curr) => acc.concat(Object.values(curr)),
|
|
[]
|
|
);
|
|
const uniqueValues = new Set(allValues);
|
|
expect(allValues.length).toBe(uniqueValues.size);
|
|
});
|
|
|
|
it('should not allow properties to be modified', () => {
|
|
Object.values(AnalyticsEvents).forEach(eventsObject => {
|
|
expect(() => {
|
|
eventsObject.NEW_PROPERTY = 'new value';
|
|
}).toThrow();
|
|
});
|
|
});
|
|
});
|