3
3
4
4
namespace ts {
5
5
const caseInsensitiveBasePath = "c:/dev/" ;
6
+ const caseInsensitiveTsconfigPath = "c:/dev/tsconfig.json" ;
6
7
const caseInsensitiveHost = new Utils . MockParseConfigHost ( caseInsensitiveBasePath , /*useCaseSensitiveFileNames*/ false , [
7
8
"c:/dev/a.ts" ,
8
9
"c:/dev/a.d.ts" ,
@@ -88,6 +89,8 @@ namespace ts {
88
89
"c:/dev/g.min.js/.g/g.ts"
89
90
] ) ;
90
91
92
+ const defaultExcludes = [ "node_modules" , "bower_components" , "jspm_packages" ] ;
93
+
91
94
describe ( "matchFiles" , ( ) => {
92
95
describe ( "with literal file list" , ( ) => {
93
96
it ( "without exclusions" , ( ) => {
@@ -189,11 +192,14 @@ namespace ts {
189
192
} ;
190
193
const expected : ts . ParsedCommandLine = {
191
194
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
+ ] ,
193
199
fileNames : [ ] ,
194
200
wildcardDirectories : { } ,
195
201
} ;
196
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
202
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
197
203
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
198
204
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
199
205
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -207,11 +213,14 @@ namespace ts {
207
213
} ;
208
214
const expected : ts . ParsedCommandLine = {
209
215
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
+ ] ,
211
220
fileNames : [ ] ,
212
221
wildcardDirectories : { } ,
213
222
} ;
214
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
223
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
215
224
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
216
225
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
217
226
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -551,13 +560,16 @@ namespace ts {
551
560
} ;
552
561
const expected : ts . ParsedCommandLine = {
553
562
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
+ ] ,
555
567
fileNames : [ ] ,
556
568
wildcardDirectories : {
557
569
"c:/dev" : ts . WatchDirectoryFlags . Recursive
558
570
} ,
559
571
} ;
560
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
572
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
561
573
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
562
574
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
563
575
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -619,7 +631,7 @@ namespace ts {
619
631
it ( "with common package folders and no exclusions" , ( ) => {
620
632
const json = {
621
633
include : [
622
- "**/a.ts"
634
+ "**/a.ts"
623
635
]
624
636
} ;
625
637
const expected : ts . ParsedCommandLine = {
@@ -701,13 +713,16 @@ namespace ts {
701
713
options : {
702
714
allowJs : false
703
715
} ,
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
+ ] ,
705
720
fileNames : [ ] ,
706
721
wildcardDirectories : {
707
722
"c:/dev/js" : ts . WatchDirectoryFlags . None
708
723
}
709
724
} ;
710
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
725
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
711
726
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
712
727
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
713
728
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -828,11 +843,14 @@ namespace ts {
828
843
} ;
829
844
const expected : ts . ParsedCommandLine = {
830
845
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
+ ,
832
850
fileNames : [ ] ,
833
851
wildcardDirectories : { }
834
852
} ;
835
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
853
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
836
854
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
837
855
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
838
856
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1030,12 +1048,14 @@ namespace ts {
1030
1048
const expected : ts . ParsedCommandLine = {
1031
1049
options : { } ,
1032
1050
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 ) )
1034
1054
] ,
1035
1055
fileNames : [ ] ,
1036
1056
wildcardDirectories : { }
1037
1057
} ;
1038
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1058
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
1039
1059
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
1040
1060
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
1041
1061
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1051,11 +1071,14 @@ namespace ts {
1051
1071
} ;
1052
1072
const expected : ts . ParsedCommandLine = {
1053
1073
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
+ ] ,
1055
1078
fileNames : [ ] ,
1056
1079
wildcardDirectories : { }
1057
1080
} ;
1058
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1081
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
1059
1082
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
1060
1083
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
1061
1084
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1071,12 +1094,14 @@ namespace ts {
1071
1094
const expected : ts . ParsedCommandLine = {
1072
1095
options : { } ,
1073
1096
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 ) )
1075
1100
] ,
1076
1101
fileNames : [ ] ,
1077
1102
wildcardDirectories : { }
1078
1103
} ;
1079
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1104
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
1080
1105
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
1081
1106
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
1082
1107
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1122,12 +1147,14 @@ namespace ts {
1122
1147
const expected : ts . ParsedCommandLine = {
1123
1148
options : { } ,
1124
1149
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 ) )
1126
1153
] ,
1127
1154
fileNames : [ ] ,
1128
1155
wildcardDirectories : { }
1129
1156
} ;
1130
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1157
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
1131
1158
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
1132
1159
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
1133
1160
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1142,12 +1169,14 @@ namespace ts {
1142
1169
const expected : ts . ParsedCommandLine = {
1143
1170
options : { } ,
1144
1171
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 ) )
1146
1175
] ,
1147
1176
fileNames : [ ] ,
1148
1177
wildcardDirectories : { }
1149
1178
} ;
1150
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath ) ;
1179
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
1151
1180
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
1152
1181
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
1153
1182
assert . deepEqual ( actual . errors , expected . errors ) ;
@@ -1195,7 +1224,7 @@ namespace ts {
1195
1224
const expected : ts . ParsedCommandLine = {
1196
1225
options : { } ,
1197
1226
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/.." )
1199
1228
] ,
1200
1229
fileNames : [
1201
1230
"c:/dev/a.ts" ,
@@ -1320,11 +1349,14 @@ namespace ts {
1320
1349
} ;
1321
1350
const expected : ts . ParsedCommandLine = {
1322
1351
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
+ ] ,
1324
1356
fileNames : [ ] ,
1325
1357
wildcardDirectories : { }
1326
1358
} ;
1327
- const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveDottedFoldersHost , caseInsensitiveBasePath ) ;
1359
+ const actual = ts . parseJsonConfigFileContent ( json , caseInsensitiveDottedFoldersHost , caseInsensitiveBasePath , undefined , caseInsensitiveTsconfigPath ) ;
1328
1360
assert . deepEqual ( actual . fileNames , expected . fileNames ) ;
1329
1361
assert . deepEqual ( actual . wildcardDirectories , expected . wildcardDirectories ) ;
1330
1362
assert . deepEqual ( actual . errors , expected . errors ) ;
0 commit comments