2015-06-16 15:14:53 +00:00
|
|
|
#!/bin/bash
|
2022-05-10 10:06:48 +00:00
|
|
|
# Copyright (C) 2016 The Qt Company Ltd.
|
|
|
|
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
2015-06-16 15:14:53 +00:00
|
|
|
|
2016-07-25 12:02:43 +00:00
|
|
|
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
2017-11-14 07:55:44 +00:00
|
|
|
scheme=$1
|
|
|
|
shift
|
|
|
|
booted_simulator=$($DIR/devices.py --state booted $@ | tail -n 1)
|
2016-03-07 20:11:11 +00:00
|
|
|
echo "SIMULATOR_DEVICES = $booted_simulator"
|
2015-06-16 15:14:53 +00:00
|
|
|
|
2017-11-14 07:55:44 +00:00
|
|
|
xcodebuild test -scheme $scheme -destination 'id=0' -destination-timeout 1 2>&1| sed -n 's/{ \(platform:.*\) }/\1/p' | while read destination; do
|
2015-06-16 15:14:53 +00:00
|
|
|
id=$(echo $destination | sed -n -E 's/.*id:([^ ,]+).*/\1/p')
|
2016-07-25 14:13:29 +00:00
|
|
|
[[ $id == *"placeholder"* ]] && continue
|
|
|
|
|
2015-06-16 15:14:53 +00:00
|
|
|
echo $destination | tr ',' '\n' | while read keyval; do
|
|
|
|
key=$(echo $keyval | cut -d ':' -f 1 | tr '[:lower:]' '[:upper:]')
|
|
|
|
val=$(echo $keyval | cut -d ':' -f 2)
|
|
|
|
echo "%_$id: DESTINATION_${key} = $val"
|
|
|
|
|
|
|
|
if [ $key = 'PLATFORM' ]; then
|
|
|
|
if [ "$val" = "iOS" ]; then
|
2016-03-07 20:11:11 +00:00
|
|
|
echo "HARDWARE_DEVICES += $id"
|
2015-06-16 15:14:53 +00:00
|
|
|
elif [ "$val" = "iOS Simulator" -a "$id" != "$booted_simulator" ]; then
|
2016-03-07 20:11:11 +00:00
|
|
|
echo "SIMULATOR_DEVICES += $id"
|
2016-02-16 14:29:59 +00:00
|
|
|
elif [ "$val" = "tvOS" ]; then
|
|
|
|
echo "HARDWARE_DEVICES += $id"
|
|
|
|
elif [ "$val" = "tvOS Simulator" -a "$id" != "$booted_simulator" ]; then
|
|
|
|
echo "SIMULATOR_DEVICES += $id"
|
2016-05-20 06:01:59 +00:00
|
|
|
elif [ "$val" = "watchOS" ]; then
|
|
|
|
echo "HARDWARE_DEVICES += $id"
|
|
|
|
elif [ "$val" = "watchOS Simulator" -a "$id" != "$booted_simulator" ]; then
|
|
|
|
echo "SIMULATOR_DEVICES += $id"
|
2015-06-16 15:14:53 +00:00
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
echo
|
|
|
|
done
|