11const assert = require ( 'chai' ) . assert ;
22const createServer = require ( '../server-fixture' ) ;
3- const { openMockFile } = require ( './_helpers' ) ;
3+ const { openMockFile, getFirstResponseOfType } = require ( './_helpers' ) ;
44
55const mockFileName = 'main.ts' ;
66
7+
78describe ( 'Errors' , ( ) => {
89 it ( 'should return error for unknown property' , ( ) => {
910 const server = createServer ( ) ;
1011 openMockFile ( server , mockFileName , 'function css(x) { return x; }; const q = css`boarder: 1px solid black;`' ) ;
1112 server . send ( { command : 'semanticDiagnosticsSync' , arguments : { file : mockFileName } } ) ;
1213
1314 return server . close ( ) . then ( ( ) => {
14- assert . strictEqual ( server . responses . length , 3 ) ;
15- const errorResponse = server . responses [ 2 ] ;
15+ const errorResponse = getFirstResponseOfType ( 'semanticDiagnosticsSync' , server . responses ) ;
1616 assert . isTrue ( errorResponse . success ) ;
1717 assert . strictEqual ( errorResponse . body . length , 1 ) ;
1818 const error = errorResponse . body [ 0 ] ;
@@ -30,8 +30,7 @@ describe('Errors', () => {
3030 server . send ( { command : 'semanticDiagnosticsSync' , arguments : { file : mockFileName } } ) ;
3131
3232 return server . close ( ) . then ( ( ) => {
33- assert . strictEqual ( server . responses . length , 3 ) ;
34- const errorResponse = server . responses [ 2 ] ;
33+ const errorResponse = getFirstResponseOfType ( 'semanticDiagnosticsSync' , server . responses ) ;
3534 assert . isTrue ( errorResponse . success ) ;
3635 assert . strictEqual ( errorResponse . body . length , 0 ) ;
3736 } ) ;
@@ -43,8 +42,7 @@ describe('Errors', () => {
4342 server . send ( { command : 'semanticDiagnosticsSync' , arguments : { file : mockFileName } } ) ;
4443
4544 return server . close ( ) . then ( ( ) => {
46- assert . strictEqual ( server . responses . length , 3 ) ;
47- const errorResponse = server . responses [ 2 ] ;
45+ const errorResponse = getFirstResponseOfType ( 'semanticDiagnosticsSync' , server . responses ) ;
4846 assert . isTrue ( errorResponse . success ) ;
4947 assert . strictEqual ( errorResponse . body . length , 0 ) ;
5048 } ) ;
@@ -56,8 +54,7 @@ describe('Errors', () => {
5654 server . send ( { command : 'semanticDiagnosticsSync' , arguments : { file : mockFileName } } ) ;
5755
5856 return server . close ( ) . then ( ( ) => {
59- assert . strictEqual ( server . responses . length , 3 ) ;
60- const errorResponse = server . responses [ 2 ] ;
57+ const errorResponse = getFirstResponseOfType ( 'semanticDiagnosticsSync' , server . responses ) ;
6158 assert . isTrue ( errorResponse . success ) ;
6259 assert . strictEqual ( errorResponse . body . length , 0 ) ;
6360 } ) ;
@@ -72,8 +69,20 @@ describe('Errors', () => {
7269 server . send ( { command : 'semanticDiagnosticsSync' , arguments : { file : mockFileName } } ) ;
7370
7471 return server . close ( ) . then ( ( ) => {
75- assert . strictEqual ( server . responses . length , 3 ) ;
76- const errorResponse = server . responses [ 2 ] ;
72+ const errorResponse = getFirstResponseOfType ( 'semanticDiagnosticsSync' , server . responses ) ;
73+ assert . isTrue ( errorResponse . success ) ;
74+ assert . strictEqual ( errorResponse . body . length , 0 ) ;
75+ } ) ;
76+ } ) ;
77+
78+ it ( 'should return errors for invalid text' , ( ) => {
79+ const server = createServer ( ) ;
80+ openMockFile ( server , mockFileName , 'function css(strings, ...) { return ""; }; const q = css`@@ ; @erer ;`' )
81+ server . send ( { command : 'semanticDiagnosticsSync' , arguments : { file : mockFileName } } ) ;
82+
83+ return server . close ( ) . then ( ( ) => {
84+ const errorResponse = getFirstResponseOfType ( 'semanticDiagnosticsSync' , server . responses ) ;
85+ console . log ( errorResponse )
7786 assert . isTrue ( errorResponse . success ) ;
7887 assert . strictEqual ( errorResponse . body . length , 0 ) ;
7988 } ) ;
0 commit comments