@@ -4,6 +4,7 @@ import type { DependencySpec, LockEntry, Environment } from '../src/types';
44import type { Fetcher } from '../src/dependency/Fetcher' ;
55import type { CacheManager } from '../src/cache/CacheManager' ;
66import * as fs from 'fs/promises' ;
7+ import { Version } from '../src/version/Version' ;
78
89describe ( 'GitHubDependency' , ( ) => {
910
@@ -157,7 +158,7 @@ describe('GitHubDependency', () => {
157158 const spec : DependencySpec = { github : 'invalid' , version : '^1.0.0' } ;
158159 const dep = new GitHubDependency ( spec , true ) ;
159160
160- const result = await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
161+ const result = await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
161162
162163 expect ( result ) . toBe ( false ) ;
163164 expect ( mockFetcher . downloadReleaseAsset ) . not . toHaveBeenCalled ( ) ;
@@ -172,7 +173,7 @@ describe('GitHubDependency', () => {
172173 { id : 1 , tag_name : 'v1.0.0' , name : 'v1.0.0' , draft : false , prerelease : false } ,
173174 ] ) ;
174175
175- const result = await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
176+ const result = await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
176177
177178 expect ( result ) . toBe ( false ) ;
178179 expect ( lock . update ?. errors ) . toBeDefined ( ) ;
@@ -188,7 +189,7 @@ describe('GitHubDependency', () => {
188189 getListDependencies : vi . fn ( ) . mockResolvedValue ( { dependencies : { } } ) ,
189190 } ) ;
190191
191- const result = await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager , false ) ;
192+ const result = await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager , false ) ;
192193
193194 expect ( result ) . toBe ( false ) ; // Skipped, already cached
194195 expect ( lock . found ) . toBe ( true ) ;
@@ -203,7 +204,7 @@ describe('GitHubDependency', () => {
203204 // Mock getPackage to return null (not cached)
204205 vi . spyOn ( dep , 'getPackage' as any ) . mockResolvedValue ( null ) ;
205206
206- const result = await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
207+ const result = await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
207208
208209 expect ( result ) . toBe ( true ) ;
209210 expect ( mockFetcher . downloadReleaseAsset ) . toHaveBeenCalledWith ( 'owner' , 'repo' , 'v1.1.0' ) ;
@@ -223,7 +224,7 @@ describe('GitHubDependency', () => {
223224 getListDependencies : vi . fn ( ) . mockResolvedValue ( { dependencies : { } } ) ,
224225 } ) ;
225226
226- const result = await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager , true ) ;
227+ const result = await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager , true ) ;
227228
228229 expect ( result ) . toBe ( true ) ;
229230 expect ( mockFetcher . downloadReleaseAsset ) . toHaveBeenCalled ( ) ;
@@ -236,7 +237,7 @@ describe('GitHubDependency', () => {
236237
237238 vi . spyOn ( dep , 'getPackage' as any ) . mockResolvedValue ( null ) ;
238239
239- await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
240+ await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
240241
241242 expect ( lock . htmlURL ) . toBe ( 'https://github.com/owner/repo/releases/tag/v1.1.0' ) ;
242243 expect ( lock . archiveURL ) . toBe ( 'https://github.com/owner/repo/releases/download/v1.1.0/repo.zip' ) ;
@@ -250,7 +251,7 @@ describe('GitHubDependency', () => {
250251
251252 mockEnv . github . htmlURL = 'https://github.mycompany.com' ;
252253
253- await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
254+ await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
254255
255256 expect ( lock . htmlURL ) . toBe ( 'https://github.mycompany.com/owner/repo/releases/tag/v1.1.0' ) ;
256257 } ) ;
@@ -262,7 +263,7 @@ describe('GitHubDependency', () => {
262263 vi . spyOn ( dep , 'getPackage' as any ) . mockResolvedValue ( null ) ;
263264 mockFetcher . downloadReleaseAsset = vi . fn ( ) . mockRejectedValue ( new Error ( 'Network error' ) ) ;
264265
265- const result = await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
266+ const result = await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
266267
267268 expect ( result ) . toBe ( false ) ;
268269 expect ( lock . found ) . toBe ( false ) ;
@@ -276,7 +277,7 @@ describe('GitHubDependency', () => {
276277 vi . spyOn ( dep , 'getPackage' as any ) . mockResolvedValue ( null ) ;
277278 mockCacheManager . extractArchive = vi . fn ( ) . mockRejectedValue ( new Error ( 'Extraction failed' ) ) ;
278279
279- const result = await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
280+ const result = await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
280281
281282 expect ( result ) . toBe ( false ) ;
282283 expect ( lock . found ) . toBe ( false ) ;
@@ -295,7 +296,7 @@ describe('GitHubDependency', () => {
295296 } ) ,
296297 } ) ;
297298
298- await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager , false ) ;
299+ await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager , false ) ;
299300
300301 expect ( lock . dependencies ) . toEqual ( {
301302 'subDep' : { github : 'other/subdep' , version : '^1.0.0' }
@@ -308,7 +309,7 @@ describe('GitHubDependency', () => {
308309
309310 vi . spyOn ( dep , 'getPackage' as any ) . mockResolvedValue ( null ) ;
310311
311- await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
312+ await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
312313
313314 expect ( lock . tag ) . toBe ( 'v2.0.0-beta' ) ;
314315 expect ( mockFetcher . getReleases ) . not . toHaveBeenCalled ( ) ;
@@ -322,7 +323,7 @@ describe('GitHubDependency', () => {
322323 vi . spyOn ( dep , 'getPackage' as any ) . mockResolvedValue ( null ) ;
323324 mockFetcher . getLatestRelease = vi . fn ( ) . mockResolvedValue ( { tag_name : 'v3.0.0' } ) ;
324325
325- await dep . fetch ( '20.0.0' , mockEnv , lock , mockFetcher , mockCacheManager ) ;
326+ await dep . fetch ( new Version ( '20.0.0' ) , mockEnv , lock , mockFetcher , mockCacheManager ) ;
326327
327328 expect ( lock . tag ) . toBe ( 'v3.0.0' ) ;
328329 expect ( mockFetcher . getLatestRelease ) . toHaveBeenCalledWith ( 'owner' , 'repo' ) ;
0 commit comments