@@ -258,15 +258,21 @@ tests =
258258 eq1 = C. thisVersion $ mkSimpleVersion 1
259259 eq2 = C. thisVersion $ mkSimpleVersion 2
260260
261- -- >0
261+ -- >0, >1
262262 gt0 = C. laterVersion $ C. mkVersion [0 ]
263+ gt1 = C. laterVersion $ C. mkVersion [1 ]
263264
264- -- <2
265+ -- <1, <2
266+ lt1 = C. earlierVersion $ C. mkVersion [2 ]
265267 lt2 = C. earlierVersion $ C. mkVersion [2 ]
266268
267269 -- >=1
268270 ge1 = C. orLaterVersion $ C. mkVersion [1 ]
269271
272+ -- ==1 || >1, ==1 || <1
273+ eqOrGt1 = C. unionVersionRanges eq1 gt1
274+ eqOrLt1 = C. unionVersionRanges eq1 lt1
275+
270276 -- \^>=1
271277 ce1 = C. majorBoundVersion $ mkSimpleVersion 1
272278
@@ -278,13 +284,13 @@ tests =
278284 eqGt = C. intersectVersionRanges eq1 gt0
279285
280286 -- ==1 || >0
281- eqOrGt = C. unionVersionRanges eq1 gt0
287+ eq1OrGt0 = C. unionVersionRanges eq1 gt0
282288
283289 -- >0 && ==1
284290 gtEq = C. intersectVersionRanges gt0 eq1
285291
286292 -- >0 || ==1
287- gtOrEq = C. unionVersionRanges gt0 eq1
293+ gt0OrEq1 = C. unionVersionRanges gt0 eq1
288294
289295 -- ==1 || ==2
290296 eqOrEq = C. unionVersionRanges eq1 eq2
@@ -317,8 +323,8 @@ tests =
317323
318324 -- B ==1 || >0, C >0 || ==1
319325 eqOrGtConstraints =
320- [ mkConstraint " B" eqOrGt
321- , mkConstraint " C" gtOrEq
326+ [ mkConstraint " B" eq1OrGt0
327+ , mkConstraint " C" gt0OrEq1
322328 ]
323329
324330 -- B >=1, C <=1
@@ -333,6 +339,12 @@ tests =
333339 , mkConstraint " C" ce1
334340 ]
335341
342+ -- B ==1 || >1, C ==1 || <1
343+ eqOrGt1Constraints =
344+ [ mkConstraint " B" eqOrGt1
345+ , mkConstraint " C" eqOrLt1
346+ ]
347+
336348 -- B ==1 || ==2, C ==1 || ==2
337349 eqOrEqConstraints =
338350 [ mkConstraint " B" eqOrEq
@@ -389,6 +401,10 @@ tests =
389401 (mkTest db17 " goal A with B <=1 && >=1, C <=1 && >=1" [" A" ] solveABC)
390402 { testConstraints = legeConstraints
391403 }
404+ , runTest . whenAll $
405+ (mkTest db17 " goal A with B ==1 || >1, C ==1 || <1" [" A" ] solveABC)
406+ { testConstraints = eqOrGt1Constraints
407+ }
392408 , runTest . whenAll $
393409 (mkTest db17 " goal A with B ==1 || ==2, C ==1 || ==2" [" A" ] solveABC)
394410 { testConstraints = eqOrEqConstraints
@@ -475,6 +491,10 @@ tests =
475491 (mkTest db17 " goal A with B ^>=1, C ^>=1" [" A" ] eqFailure)
476492 { testConstraints = celeConstraints
477493 }
494+ , runTest . whenEq $
495+ (mkTest db17 " goal A with B ==1 || >1, C ==1 || <1" [" A" ] eqFailure)
496+ { testConstraints = eqOrGt1Constraints
497+ }
478498 , runTest . whenEq $
479499 (mkTest db17 " goal A with B ==1 || ==2, C ==1 || ==2" [" A" ] eqFailure)
480500 { testConstraints = eqOrEqConstraints
0 commit comments