@@ -3,9 +3,13 @@ jest.mock('globby');
33import fs from 'fs' ;
44import path from 'path' ;
55import globby from 'globby' ;
6- import { PluginManager } from 'live-plugin-manager' ;
76
8- import { fetchConfig , fetchPackage , fetchRemotePackage } from '.' ;
7+ import {
8+ fetchConfig ,
9+ fetchPackage ,
10+ fetchRemotePackage ,
11+ type ModuleLoader ,
12+ } from '.' ;
913
1014const mockBasePath = path . join ( __dirname , 'path' , 'to' ) ;
1115
@@ -109,28 +113,23 @@ describe('fetcher', () => {
109113 require : jest . fn ( ) . mockReturnValue ( mockConfig ) ,
110114 } ;
111115
112- const configMeta = await fetchPackage (
113- 'fake-package' ,
114- mockPackageManager as unknown as PluginManager ,
115- ) ;
116+ const configMeta = await fetchPackage ( 'fake-package' , mockPackageManager ) ;
116117
117118 expect ( configMeta ! . config ) . toEqual ( mockConfig ) ;
118119 expect ( configMeta ! . filePath ) . toEqual ( mockFilePath ) ;
119120 } ) ;
120121
121122 it ( 'should throw if fetching fails' , async ( ) => {
122- const mockPackageManager = {
123+ const mockPackageManager : ModuleLoader = {
123124 install : jest . fn ( ) . mockRejectedValue ( 'Import error' ) ,
124125 require : jest . fn ( ) . mockReturnValue ( mockConfig ) ,
126+ getInfo : jest . fn ( ) ,
125127 } ;
126128
127129 expect . assertions ( 1 ) ;
128130
129131 await expect (
130- fetchPackage (
131- 'fake-package' ,
132- mockPackageManager as unknown as PluginManager ,
133- ) ,
132+ fetchPackage ( 'fake-package' , mockPackageManager ) ,
134133 ) . rejects . toEqual ( 'Import error' ) ;
135134 } ) ;
136135 } ) ;
@@ -150,7 +149,7 @@ describe('fetcher', () => {
150149
151150 const configMeta = await fetchRemotePackage (
152151 'fake-package' ,
153- mockPackageManager as unknown as PluginManager ,
152+ mockPackageManager ,
154153 ) ;
155154
156155 expect ( configMeta ! . config ) . toEqual ( mockConfig ) ;
@@ -160,17 +159,16 @@ describe('fetcher', () => {
160159 } ) ;
161160
162161 it ( 'should throw if fetching fails' , async ( ) => {
163- const mockPackageManager = {
162+ const mockPackageManager : ModuleLoader = {
164163 install : jest . fn ( ) . mockRejectedValue ( 'Import error' ) ,
164+ getInfo : jest . fn ( ) ,
165+ require : jest . fn ( ) ,
165166 } ;
166167
167168 expect . assertions ( 1 ) ;
168169
169170 await expect (
170- fetchRemotePackage (
171- 'fake-package' ,
172- mockPackageManager as unknown as PluginManager ,
173- ) ,
171+ fetchRemotePackage ( 'fake-package' , mockPackageManager ) ,
174172 ) . rejects . toEqual ( 'Import error' ) ;
175173 } ) ;
176174
@@ -185,7 +183,7 @@ describe('fetcher', () => {
185183
186184 const configMeta = await fetchRemotePackage (
187185 'fake-package' ,
188- mockPackageManager as unknown as PluginManager ,
186+ mockPackageManager ,
189187 ) ;
190188
191189 expect ( configMeta ! . config ) . toEqual ( mockConfig ) ;
@@ -205,42 +203,38 @@ describe('fetcher', () => {
205203 Promise . resolve ( [ ] ) ,
206204 ) ;
207205
208- const res = await fetchRemotePackage (
209- 'fake-package' ,
210- mockPackageManager as unknown as PluginManager ,
211- ) ;
206+ const res = await fetchRemotePackage ( 'fake-package' , mockPackageManager ) ;
212207
213208 expect ( res ) . toBeUndefined ( ) ;
214209 } ) ;
215210
216211 it ( 'should throw if fetching fails' , async ( ) => {
217- const mockPackageManager = {
212+ const mockPackageManager : ModuleLoader = {
218213 install : jest . fn ( ) . mockRejectedValue ( 'Import error' ) ,
214+ getInfo : jest . fn ( ) ,
215+ require : jest . fn ( ) ,
219216 } ;
220217
221218 expect . assertions ( 1 ) ;
222219
223220 await expect (
224- fetchRemotePackage (
225- 'fake-package' ,
226- mockPackageManager as unknown as PluginManager ,
227- ) ,
221+ fetchRemotePackage ( 'fake-package' , mockPackageManager ) ,
228222 ) . rejects . toEqual ( 'Import error' ) ;
229223 } ) ;
230224
231225 it ( 'should throw if package source cannot be retrieved' , async ( ) => {
232- const mockPackageManager = {
226+ const mockPackageManager : ModuleLoader = {
233227 install : jest . fn ( ) ,
234- getInfo : ( ) => undefined ,
228+ getInfo : ( ) => {
229+ throw new Error ( 'Package not found' ) ;
230+ } ,
231+ require : jest . fn ( ) ,
235232 } ;
236233
237234 expect . assertions ( 1 ) ;
238235
239236 await expect (
240- fetchRemotePackage (
241- 'fake-package' ,
242- mockPackageManager as unknown as PluginManager ,
243- ) ,
237+ fetchRemotePackage ( 'fake-package' , mockPackageManager ) ,
244238 ) . rejects . toEqual (
245239 new Error ( `Unable to locate package files for package: 'fake-package'` ) ,
246240 ) ;
0 commit comments