@@ -239,24 +239,43 @@ func TestGetPackageDeps(t *testing.T) {
239
239
240
240
repoRoot := fs .AbsolutePathFromUpstream (t .TempDir ())
241
241
myPkgDir := repoRoot .Join ("my-pkg" )
242
+
243
+ // create the dir first
244
+ err := myPkgDir .MkdirAll ()
245
+ assert .NilError (t , err , "CreateDir" )
246
+
247
+ // create file 1
242
248
committedFilePath := myPkgDir .Join ("committed-file" )
243
- err := committedFilePath .EnsureDir ()
244
- assert .NilError (t , err , "EnsureDir" )
245
249
err = committedFilePath .WriteFile ([]byte ("committed bytes" ), 0644 )
246
250
assert .NilError (t , err , "WriteFile" )
251
+
252
+ // create file 2
247
253
deletedFilePath := myPkgDir .Join ("deleted-file" )
248
254
err = deletedFilePath .WriteFile ([]byte ("delete-me" ), 0644 )
249
255
assert .NilError (t , err , "WriteFile" )
256
+
257
+ // create file 3
250
258
nestedPath := myPkgDir .Join ("dir" , "nested-file" )
251
259
assert .NilError (t , nestedPath .EnsureDir (), "EnsureDir" )
252
260
assert .NilError (t , nestedPath .WriteFile ([]byte ("nested" ), 0644 ), "WriteFile" )
261
+
262
+ // create a package.json
263
+ packageJSONPath := myPkgDir .Join ("package.json" )
264
+ err = packageJSONPath .WriteFile ([]byte ("{}" ), 0644 )
265
+ assert .NilError (t , err , "WriteFile" )
266
+
267
+ // set up git repo and commit all
253
268
requireGitCmd (t , repoRoot , "init" , "." )
254
269
requireGitCmd (t , repoRoot , "config" , "--local" , "user.name" , "test" )
255
270
requireGitCmd (
t ,
repoRoot ,
"config" ,
"--local" ,
"user.email" ,
"[email protected] " )
256
271
requireGitCmd (t , repoRoot , "add" , "." )
257
272
requireGitCmd (t , repoRoot , "commit" , "-m" , "foo" )
273
+
274
+ // remove a file
258
275
err = deletedFilePath .Remove ()
259
276
assert .NilError (t , err , "Remove" )
277
+
278
+ // create another untracked file in git
260
279
uncommittedFilePath := myPkgDir .Join ("uncommitted-file" )
261
280
err = uncommittedFilePath .WriteFile ([]byte ("uncommitted bytes" ), 0644 )
262
281
assert .NilError (t , err , "WriteFile" )
@@ -265,25 +284,30 @@ func TestGetPackageDeps(t *testing.T) {
265
284
opts * PackageDepsOptions
266
285
expected map [turbopath.AnchoredUnixPath ]string
267
286
}{
287
+ // base case. when inputs aren't specified, all files hashes are computed
268
288
{
269
289
opts : & PackageDepsOptions {
270
290
PackagePath : "my-pkg" ,
271
291
},
272
292
expected : map [turbopath.AnchoredUnixPath ]string {
273
293
"committed-file" : "3a29e62ea9ba15c4a4009d1f605d391cdd262033" ,
274
294
"uncommitted-file" : "4e56ad89387e6379e4e91ddfe9872cf6a72c9976" ,
295
+ "package.json" : "9e26dfeeb6e641a33dae4961196235bdb965b21b" ,
275
296
"dir/nested-file" : "bfe53d766e64d78f80050b73cd1c88095bc70abb" ,
276
297
},
277
298
},
299
+ // with inputs, only the specified inputs are hashed
278
300
{
279
301
opts : & PackageDepsOptions {
280
302
PackagePath : "my-pkg" ,
281
303
InputPatterns : []string {"uncommitted-file" },
282
304
},
283
305
expected : map [turbopath.AnchoredUnixPath ]string {
306
+ "package.json" : "9e26dfeeb6e641a33dae4961196235bdb965b21b" ,
284
307
"uncommitted-file" : "4e56ad89387e6379e4e91ddfe9872cf6a72c9976" ,
285
308
},
286
309
},
310
+ // inputs with glob pattern also works
287
311
{
288
312
opts : & PackageDepsOptions {
289
313
PackagePath : "my-pkg" ,
@@ -292,16 +316,19 @@ func TestGetPackageDeps(t *testing.T) {
292
316
expected : map [turbopath.AnchoredUnixPath ]string {
293
317
"committed-file" : "3a29e62ea9ba15c4a4009d1f605d391cdd262033" ,
294
318
"uncommitted-file" : "4e56ad89387e6379e4e91ddfe9872cf6a72c9976" ,
319
+ "package.json" : "9e26dfeeb6e641a33dae4961196235bdb965b21b" ,
295
320
"dir/nested-file" : "bfe53d766e64d78f80050b73cd1c88095bc70abb" ,
296
321
},
297
322
},
323
+ // inputs with another glob pattern works
298
324
{
299
325
opts : & PackageDepsOptions {
300
326
PackagePath : "my-pkg" ,
301
327
InputPatterns : []string {"**/{uncommitted,committed}-file" },
302
328
},
303
329
expected : map [turbopath.AnchoredUnixPath ]string {
304
330
"committed-file" : "3a29e62ea9ba15c4a4009d1f605d391cdd262033" ,
331
+ "package.json" : "9e26dfeeb6e641a33dae4961196235bdb965b21b" ,
305
332
"uncommitted-file" : "4e56ad89387e6379e4e91ddfe9872cf6a72c9976" ,
306
333
},
307
334
},
0 commit comments