@@ -145,14 +145,78 @@ block: # select out of implied fabric mods
145
145
doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
146
146
doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
147
147
148
+ block : # select out of specified quilt mods
149
+ let loader = Loader .Quilt
150
+ var mcVersion: Version
151
+ let mods = @ [
152
+ initCfAddonFile (301 , " rei-1.0.2.jar" , @ [" 1.14.1" , " 1.14.4" , " Quilt" ], CfAddonFileReleaseType .Release ),
153
+ initCfAddonFile (201 , " rei-1.0.1.jar" , @ [" 1.14" , " 1.14.1" , " Quilt" ], CfAddonFileReleaseType .Release ),
154
+ initCfAddonFile (101 , " rei-1.0.0.jar" , @ [" 1.14" , " Quilt" ], CfAddonFileReleaseType .Beta )
155
+ ]
156
+
157
+ mcVersion = " 1.12" .Version
158
+ doAssertRaises (PaxInstallError ):
159
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable )
160
+ doAssertRaises (PaxInstallError ):
161
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended )
162
+ doAssertRaises (PaxInstallError ):
163
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest )
164
+
165
+ mcVersion = " 1.14" .Version
166
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[1 ]
167
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[1 ]
168
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
169
+
170
+ mcVersion = " 1.14.1" .Version
171
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[0 ]
172
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
173
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
174
+
175
+ mcVersion = " 1.14.4" .Version
176
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[0 ]
177
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
178
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
179
+
180
+ block : # select out of implied quilt mods
181
+ let loader = Loader .Quilt
182
+ var mcVersion: Version
183
+ let mods = @ [
184
+ initCfAddonFile (301 , " rei-1.0.2-quilt.jar" , @ [" 1.14.1" , " 1.14.4" ], CfAddonFileReleaseType .Alpha ),
185
+ initCfAddonFile (201 , " rei-1.0.1-fabric.jar" , @ [" 1.14" , " 1.14.1" ], CfAddonFileReleaseType .Beta ),
186
+ initCfAddonFile (101 , " rei-1.0.0-fabric.jar" , @ [" 1.14" , " Fabric" , " Quilt" ], CfAddonFileReleaseType .Release )
187
+ ]
188
+
189
+ mcVersion = " 1.12" .Version
190
+ doAssertRaises (PaxInstallError ):
191
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable )
192
+ doAssertRaises (PaxInstallError ):
193
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended )
194
+ doAssertRaises (PaxInstallError ):
195
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest )
196
+
197
+ mcVersion = " 1.14" .Version
198
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[2 ]
199
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[1 ]
200
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
201
+
202
+ mcVersion = " 1.14.1" .Version
203
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[0 ]
204
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
205
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
206
+
207
+ mcVersion = " 1.14.4" .Version
208
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[0 ]
209
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
210
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
211
+
148
212
block : # select out of mixed mods
149
213
var loader: Loader
150
214
var mcVersion: Version
151
215
let mods = @ [
152
216
initCfAddonFile (801 , " abc-1.3.2-fabric.jar" , @ [" 1.16.1" , " 1.16.2" ], CfAddonFileReleaseType .Release ),
153
217
initCfAddonFile (701 , " abc-1.3.2-FORGE.jar" , @ [" 1.16.1" , " 1.16.2" ], CfAddonFileReleaseType .Release ),
154
218
initCfAddonFile (601 , " abc-1.2.2.jar" , @ [" 1.16" , " 1.16.1" , " Forge" ], CfAddonFileReleaseType .Alpha ),
155
- initCfAddonFile (501 , " abc-1.2.1.jar" , @ [" 1.16.1" , " Fabric" ], CfAddonFileReleaseType .Alpha ),
219
+ initCfAddonFile (501 , " abc-1.2.1.jar" , @ [" 1.16.1" , " Fabric" , " Quilt " ], CfAddonFileReleaseType .Alpha ),
156
220
initCfAddonFile (401 , " abc-1.2.1.jar" , @ [" 1.16" , " 1.16.1" , " Forge" ], CfAddonFileReleaseType .Release ),
157
221
initCfAddonFile (301 , " abc-1.2.0-FABRIC.jar" , @ [" 1.16" ], CfAddonFileReleaseType .Release ),
158
222
initCfAddonFile (201 , " abc-1.0.1.jar" , @ [" 1.14.4" ], CfAddonFileReleaseType .Beta ),
@@ -237,6 +301,48 @@ block: # select out of mixed mods
237
301
doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
238
302
doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
239
303
304
+ # Set loader to quilt
305
+ loader = Loader .Quilt
306
+
307
+ mcVersion = " 1.12" .Version
308
+ doAssertRaises (PaxInstallError ):
309
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable )
310
+ doAssertRaises (PaxInstallError ):
311
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended )
312
+ doAssertRaises (PaxInstallError ):
313
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest )
314
+
315
+ mcVersion = " 1.14" .Version
316
+ doAssertRaises (PaxInstallError ):
317
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable )
318
+ doAssertRaises (PaxInstallError ):
319
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended )
320
+ doAssertRaises (PaxInstallError ):
321
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest )
322
+
323
+ mcVersion = " 1.14.1" .Version
324
+ doAssertRaises (PaxInstallError ):
325
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable )
326
+ doAssertRaises (PaxInstallError ):
327
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended )
328
+ doAssertRaises (PaxInstallError ):
329
+ discard mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest )
330
+
331
+ mcVersion = " 1.16" .Version
332
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[5 ]
333
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[5 ]
334
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
335
+
336
+ mcVersion = " 1.16.1" .Version
337
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[0 ]
338
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
339
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
340
+
341
+ mcVersion = " 1.16.2" .Version
342
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Stable ) == mods[0 ]
343
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Recommended ) == mods[0 ]
344
+ doAssert mods.selectAddonFile (loader, mcVersion, InstallStrategy .Newest ) == mods[0 ]
345
+
240
346
block : # prevent quilt mods from being selected for forge
241
347
let loader = Loader .Forge
242
348
let mcVersion = " 1.16.1" .Version
0 commit comments