mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-10-31 19:17:48 +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();
 | |
|     });
 | |
|   });
 | |
| });
 | 
