@@ -23,7 +23,7 @@ func TestHasUvLockFile(t *testing.T) {
2323 tmpDir := t .TempDir ()
2424 createUvLockFile (t , tmpDir , "project1" )
2525
26- result := util .HasUvLockFile (tmpDir , false , & nopLogger )
26+ result := util .HasUvLockFile (tmpDir , "" , false , & nopLogger )
2727 assert .False (t , result )
2828 })
2929
@@ -33,7 +33,7 @@ func TestHasUvLockFile(t *testing.T) {
3333 tmpDir := t .TempDir ()
3434 createUvLockFile (t , tmpDir , "project1" )
3535
36- result := util .HasUvLockFile (tmpDir , true , & nopLogger )
36+ result := util .HasUvLockFile (tmpDir , "" , true , & nopLogger )
3737 assert .True (t , result )
3838 })
3939}
@@ -48,23 +48,54 @@ func TestHasUvLockFileSingle(t *testing.T) {
4848 tmpDir := t .TempDir ()
4949 createUvLockFile (t , tmpDir )
5050
51- result := util .HasUvLockFileSingle (tmpDir , & nopLogger )
51+ result := util .HasUvLockFileSingle (tmpDir , "" , & nopLogger )
52+ assert .True (t , result )
53+ })
54+
55+ t .Run ("returns true when uv.lock exists with target file" , func (t * testing.T ) {
56+ t .Parallel ()
57+
58+ tmpDir := t .TempDir ()
59+ createUvLockFile (t , tmpDir )
60+
61+ result := util .HasUvLockFileSingle (tmpDir , "uv.lock" , & nopLogger )
62+ assert .True (t , result )
63+ })
64+
65+ t .Run ("returns true when uv.lock exists with target file in subdirectory" , func (t * testing.T ) {
66+ t .Parallel ()
67+
68+ tmpDir := t .TempDir ()
69+ createUvLockFile (t , tmpDir , "subdir" )
70+
71+ result := util .HasUvLockFileSingle (tmpDir , "subdir/uv.lock" , & nopLogger )
72+ assert .True (t , result )
73+ })
74+
75+ t .Run ("returns true when uv.lock exists with target file in subdirectory and giving absolute path" , func (t * testing.T ) {
76+ t .Parallel ()
77+
78+ tmpDir := t .TempDir ()
79+ createUvLockFile (t , tmpDir , "subdir" )
80+ absolutePath := filepath .Join (tmpDir , "subdir" , constants .UvLockFileName )
81+
82+ result := util .HasUvLockFileSingle (tmpDir , absolutePath , & nopLogger )
5283 assert .True (t , result )
5384 })
5485
5586 t .Run ("returns false when uv.lock does not exist" , func (t * testing.T ) {
5687 t .Parallel ()
5788 dir := t .TempDir ()
5889
59- result := util .HasUvLockFileSingle (dir , & nopLogger )
90+ result := util .HasUvLockFileSingle (dir , "" , & nopLogger )
6091 assert .False (t , result )
6192 })
6293
6394 t .Run ("returns false when directory does not exist" , func (t * testing.T ) {
6495 t .Parallel ()
6596 dir := filepath .Join (t .TempDir (), "nonexistent" )
6697
67- result := util .HasUvLockFileSingle (dir , & nopLogger )
98+ result := util .HasUvLockFileSingle (dir , "" , & nopLogger )
6899 assert .False (t , result )
69100 })
70101
@@ -75,7 +106,7 @@ func TestHasUvLockFileSingle(t *testing.T) {
75106 err := os .WriteFile (uvLockPath , []byte ("# test" ), 0o600 )
76107 require .NoError (t , err )
77108
78- result := util .HasUvLockFileSingle (dir , nil )
109+ result := util .HasUvLockFileSingle (dir , "" , nil )
79110 assert .True (t , result )
80111 })
81112}
@@ -155,7 +186,7 @@ func TestHasUvLockFileInAnyDir(t *testing.T) {
155186 err := os .WriteFile (uvLockPath , []byte ("# test" ), 0o600 )
156187 require .NoError (t , err )
157188
158- result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, false , & nopLogger )
189+ result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, "" , false , & nopLogger )
159190 assert .True (t , result )
160191 })
161192
@@ -168,7 +199,7 @@ func TestHasUvLockFileInAnyDir(t *testing.T) {
168199 err := os .WriteFile (uvLockPath , []byte ("# test" ), 0o600 )
169200 require .NoError (t , err )
170201
171- result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, false , & nopLogger )
202+ result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, "" , false , & nopLogger )
172203 assert .True (t , result )
173204 })
174205
@@ -185,7 +216,7 @@ func TestHasUvLockFileInAnyDir(t *testing.T) {
185216 err = os .WriteFile (uvLockPath2 , []byte ("# test" ), 0o600 )
186217 require .NoError (t , err )
187218
188- result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, false , & nopLogger )
219+ result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, "" , false , & nopLogger )
189220 assert .True (t , result )
190221 })
191222
@@ -194,14 +225,14 @@ func TestHasUvLockFileInAnyDir(t *testing.T) {
194225 dir1 := t .TempDir ()
195226 dir2 := t .TempDir ()
196227
197- result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, false , & nopLogger )
228+ result := util .HasUvLockFileInAnyDir ([]string {dir1 , dir2 }, "" , false , & nopLogger )
198229 assert .False (t , result )
199230 })
200231
201232 t .Run ("returns false for empty directory list" , func (t * testing.T ) {
202233 t .Parallel ()
203234
204- result := util .HasUvLockFileInAnyDir ([]string {}, false , & nopLogger )
235+ result := util .HasUvLockFileInAnyDir ([]string {}, "" , false , & nopLogger )
205236 assert .False (t , result )
206237 })
207238
@@ -214,7 +245,7 @@ func TestHasUvLockFileInAnyDir(t *testing.T) {
214245 err := os .WriteFile (uvLockPath , []byte ("# test" ), 0o600 )
215246 require .NoError (t , err )
216247
217- result := util .HasUvLockFileInAnyDir ([]string {nonExistentDir , dir1 }, false , & nopLogger )
248+ result := util .HasUvLockFileInAnyDir ([]string {nonExistentDir , dir1 }, "" , false , & nopLogger )
218249 assert .True (t , result )
219250 })
220251}
0 commit comments