33
44namespace ts {
55 const caseInsensitiveBasePath = "c:/dev/" ;
6+ const caseInsensitiveTsconfigPath = "c:/dev/tsconfig.json" ;
67 const caseInsensitiveHost = new Utils . MockParseConfigHost ( caseInsensitiveBasePath , /*useCaseSensitiveFileNames*/ false , [
78 "c:/dev/a.ts" ,
89 "c:/dev/a.d.ts" ,
@@ -88,6 +89,8 @@ namespace ts {
8889 "c:/dev/g.min.js/.g/g.ts"
8990 ] ) ;
9091
92+ const defaultExcludes = [ "node_modules" , "bower_components" , "jspm_packages" ] ;
93+
9194 describe ( "matchFiles" , ( ) => {
9295 describe ( "with literal file list" , ( ) => {
9396 it ( "without exclusions" , ( ) => {
@@ -189,11 +192,14 @@ namespace ts {
189192 } ;
190193 const expected : ts . ParsedCommandLine = {
191194 options : { } ,
192- errors : [ ] ,
195+ errors : [
196+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
197+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
198+ ] ,
193199 fileNames : [ ] ,
194200 wildcardDirectories : { } ,
195201 } ;
196- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
202+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
197203 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
198204 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
199205 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -207,11 +213,14 @@ namespace ts {
207213 } ;
208214 const expected : ts . ParsedCommandLine = {
209215 options : { } ,
210- errors : [ ] ,
216+ errors : [
217+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
218+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
219+ ] ,
211220 fileNames : [ ] ,
212221 wildcardDirectories : { } ,
213222 } ;
214- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
223+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
215224 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
216225 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
217226 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -551,13 +560,16 @@ namespace ts {
551560 } ;
552561 const expected : ts . ParsedCommandLine = {
553562 options : { } ,
554- errors : [ ] ,
563+ errors : [
564+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
565+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
566+ ] ,
555567 fileNames : [ ] ,
556568 wildcardDirectories : {
557569 "c:/dev" : ts . WatchDirectoryFlags . Recursive
558570 } ,
559571 } ;
560- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
572+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
561573 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
562574 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
563575 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -619,7 +631,7 @@ namespace ts {
619631 it ( "with common package folders and no exclusions" , ( ) => {
620632 const json = {
621633 include : [
622- "**/a.ts"
634+ "**/a.ts"
623635 ]
624636 } ;
625637 const expected : ts . ParsedCommandLine = {
@@ -701,13 +713,16 @@ namespace ts {
701713 options : {
702714 allowJs : false
703715 } ,
704- errors : [ ] ,
716+ errors : [
717+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
718+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
719+ ] ,
705720 fileNames : [ ] ,
706721 wildcardDirectories : {
707722 "c:/dev/js" : ts . WatchDirectoryFlags . None
708723 }
709724 } ;
710- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
725+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
711726 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
712727 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
713728 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -828,11 +843,14 @@ namespace ts {
828843 } ;
829844 const expected : ts . ParsedCommandLine = {
830845 options : { } ,
831- errors : [ ] ,
846+ errors : [
847+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
848+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( json . exclude ) ) ]
849+ ,
832850 fileNames : [ ] ,
833851 wildcardDirectories : { }
834852 } ;
835- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
853+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
836854 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
837855 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
838856 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1030,12 +1048,14 @@ namespace ts {
10301048 const expected : ts . ParsedCommandLine = {
10311049 options : { } ,
10321050 errors : [
1033- ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**" )
1051+ ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**" ) ,
1052+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
1053+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
10341054 ] ,
10351055 fileNames : [ ] ,
10361056 wildcardDirectories : { }
10371057 } ;
1038- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1058+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
10391059 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
10401060 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
10411061 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1051,11 +1071,14 @@ namespace ts {
10511071 } ;
10521072 const expected : ts . ParsedCommandLine = {
10531073 options : { } ,
1054- errors : [ ] ,
1074+ errors : [
1075+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
1076+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( json . exclude ) )
1077+ ] ,
10551078 fileNames : [ ] ,
10561079 wildcardDirectories : { }
10571080 } ;
1058- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1081+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
10591082 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
10601083 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
10611084 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1071,12 +1094,14 @@ namespace ts {
10711094 const expected : ts . ParsedCommandLine = {
10721095 options : { } ,
10731096 errors : [
1074- ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_multiple_recursive_directory_wildcards_Asterisk_Asterisk_Colon_0 , "**/x/**/*" )
1097+ ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_multiple_recursive_directory_wildcards_Asterisk_Asterisk_Colon_0 , "**/x/**/*" ) ,
1098+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
1099+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
10751100 ] ,
10761101 fileNames : [ ] ,
10771102 wildcardDirectories : { }
10781103 } ;
1079- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1104+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
10801105 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
10811106 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
10821107 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1122,12 +1147,14 @@ namespace ts {
11221147 const expected : ts . ParsedCommandLine = {
11231148 options : { } ,
11241149 errors : [
1125- ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**/../*" )
1150+ ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**/../*" ) ,
1151+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
1152+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
11261153 ] ,
11271154 fileNames : [ ] ,
11281155 wildcardDirectories : { }
11291156 } ;
1130- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1157+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
11311158 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
11321159 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
11331160 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1142,12 +1169,14 @@ namespace ts {
11421169 const expected : ts . ParsedCommandLine = {
11431170 options : { } ,
11441171 errors : [
1145- ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**/y/../*" )
1172+ ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**/y/../*" ) ,
1173+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
1174+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( defaultExcludes ) )
11461175 ] ,
11471176 fileNames : [ ] ,
11481177 wildcardDirectories : { }
11491178 } ;
1150- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1179+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
11511180 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
11521181 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
11531182 assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1195,7 +1224,7 @@ namespace ts {
11951224 const expected : ts . ParsedCommandLine = {
11961225 options : { } ,
11971226 errors : [
1198- ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**/y/.." )
1227+ ts . createCompilerDiagnostic ( ts . Diagnostics . File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0 , "**/y/.." )
11991228 ] ,
12001229 fileNames : [
12011230 "c:/dev/a.ts" ,
@@ -1320,11 +1349,14 @@ namespace ts {
13201349 } ;
13211350 const expected : ts . ParsedCommandLine = {
13221351 options : { } ,
1323- errors : [ ] ,
1352+ errors : [
1353+ ts . createCompilerDiagnostic ( ts . Diagnostics . No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2 ,
1354+ caseInsensitiveTsconfigPath , JSON . stringify ( json . include ) , JSON . stringify ( json . exclude ) )
1355+ ] ,
13241356 fileNames : [ ] ,
13251357 wildcardDirectories : { }
13261358 } ;
1327- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveDottedFoldersHost , caseInsensitiveBasePath ) ;
1359+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveDottedFoldersHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
13281360 assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
13291361 assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
13301362 assert . deepEqual ( actual . errors , expected . errors ) ;
0 commit comments