#!/usr/bin/env bash
# test if picking right image/version/slot when multiple to pick from
set_portroot
ebuild "$(get_ebuild test 1.5 : SLOT:2)" merge
ebuild "$(get_ebuild test 2.5 :)" merge
ebuild "$(get_ebuild test 3.5 : SLOT:2)" install
ebuild "$(get_ebuild test 4.5 :)" install
ebuild "$(get_ebuild test 5.5 :)" prepare # incomplete build
ebuild "$(get_ebuild alt 1.5 :)" merge
ebuild "$(get_ebuild alt 1.5 :)" install
expect "*test-3.5*test-4.5*" -cW dev-test/test
expect "*test-1.5*test-3.5*" -cW dev-test/test:2
expect "*test-4.5*test-3.5*" -cW dev-test/test =dev-test/test-3.5 # *1
expect "*test-1.5*test-3.5*" -cW dev-test/test:2 =dev-test/test-3.5
expect "*test-2.5*test-4.5*" -cW dev-test/test:0 =dev-test/test-4.5 # *1
expect "*alt-1.5/image*test-4.5*" -cW dev-test/alt dev-test/test # nonsense but allowed, *1
expect "*=dev-test/alt-1.5*alt-1.5/image*" -cW dev-test/alt # *1
# *1: meant to have these tests with unspecified category to test the category
#     logic, but portage gets confused by ::gentoo (https://bugs.gentoo.org/939721)

# FIXME:
#expect "*test-4.5*test-2.5*" -cW =dev-test/test-4.5 =dev-test/test-2.5
