base:
  available:
    - A 1.0.0; depends B == 1.0.0, C == 1.0.0
    - A 0.8.0
    - B 1.0.0; depends D == 1.0.0
    - C 1.0.0; depends D == 2.0.0
    - D 1.0.0
    - D 2.0.0

cases:
-
  request:
    - install: A
  response:
    - state:
      - A 0.8.0
  # the old resolver tries to install A 1.0.0 (which fails), but the new
  # resolver realises that A 1.0.0 cannot be installed and falls back to
  # installing the older version A 0.8.0 instead.
  skip: legacy
