44 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			44 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | describe('problem matcher tests', () => { | ||
|  |   it('tsc: matches TypeScript "pretty" error message', () => { | ||
|  |     const [ | ||
|  |       { | ||
|  |         pattern: [{regexp}] | ||
|  |       } | ||
|  |     ] = require('../.github/tsc.json').problemMatcher; | ||
|  |     const exampleErrorMessage = | ||
|  |       "lib/index.js:23:42 - error TS2345: Argument of type 'A' is not assignable to parameter of type 'B'."; | ||
|  | 
 | ||
|  |     const match = exampleErrorMessage.match(new RegExp(regexp)); | ||
|  |     expect(match).not.toBeNull(); | ||
|  |     expect(match![1]).toEqual('lib/index.js'); | ||
|  |     expect(match![2]).toEqual('23'); | ||
|  |     expect(match![3]).toEqual('42'); | ||
|  |     expect(match![4]).toEqual('error'); | ||
|  |     expect(match![5]).toEqual('2345'); | ||
|  |     expect(match![6]).toEqual( | ||
|  |       "Argument of type 'A' is not assignable to parameter of type 'B'." | ||
|  |     ); | ||
|  |   }); | ||
|  | 
 | ||
|  |   it('tsc: matches TypeScript error message from log file', () => { | ||
|  |     const [ | ||
|  |       { | ||
|  |         pattern: [{regexp}] | ||
|  |       } | ||
|  |     ] = require('../.github/tsc.json').problemMatcher; | ||
|  |     const exampleErrorMessage = | ||
|  |       "lib/index.js(23,42): error TS2345: Argument of type 'A' is not assignable to parameter of type 'B'."; | ||
|  | 
 | ||
|  |     const match = exampleErrorMessage.match(new RegExp(regexp)); | ||
|  |     expect(match).not.toBeNull(); | ||
|  |     expect(match![1]).toEqual('lib/index.js'); | ||
|  |     expect(match![2]).toEqual('23'); | ||
|  |     expect(match![3]).toEqual('42'); | ||
|  |     expect(match![4]).toEqual('error'); | ||
|  |     expect(match![5]).toEqual('2345'); | ||
|  |     expect(match![6]).toEqual( | ||
|  |       "Argument of type 'A' is not assignable to parameter of type 'B'." | ||
|  |     ); | ||
|  |   }); | ||
|  | }); |