88 lines
2.6 KiB
Bash
Executable file
88 lines
2.6 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
pushd $(dirname "$0") > /dev/null
|
|
|
|
RunCreateInstanceTest()
|
|
{
|
|
# Check for layer insertion via CreateInstance.
|
|
output=$(VK_LOADER_DEBUG=all \
|
|
GTEST_FILTER=CreateInstance.LayerPresent \
|
|
./vk_loader_validation_tests 2>&1)
|
|
|
|
echo "$output" | grep -q "Insert instance layer VK_LAYER_LUNARG_parameter_validation"
|
|
ec=$?
|
|
|
|
if [ $ec -eq 1 ]
|
|
then
|
|
echo "CreateInstance insertion test FAILED - parameter-validation not detected in instance layers" >&2
|
|
exit 1
|
|
fi
|
|
echo "CreateInstance Insertion test PASSED"
|
|
}
|
|
|
|
RunEnumerateInstanceLayerPropertiesTest()
|
|
{
|
|
count=$(GTEST_FILTER=EnumerateInstanceLayerProperties.Count \
|
|
./vk_loader_validation_tests count 2>&1 |
|
|
grep -o 'count=[0-9]\+' | sed 's/^.*=//')
|
|
|
|
if [ "$count" -gt 1 ]
|
|
then
|
|
diff \
|
|
<(GTEST_PRINT_TIME=0 \
|
|
GTEST_FILTER=EnumerateInstanceLayerProperties.OnePass \
|
|
./vk_loader_validation_tests count "$count" properties 2>&1 |
|
|
grep 'properties') \
|
|
<(GTEST_PRINT_TIME=0 \
|
|
GTEST_FILTER=EnumerateInstanceLayerProperties.TwoPass \
|
|
./vk_loader_validation_tests properties 2>&1 |
|
|
grep 'properties')
|
|
fi
|
|
ec=$?
|
|
|
|
if [ $ec -eq 1 ]
|
|
then
|
|
echo "EnumerateInstanceLayerProperties OnePass vs TwoPass test FAILED - properties do not match" >&2
|
|
exit 1
|
|
fi
|
|
echo "EnumerateInstanceLayerProperties OnePass vs TwoPass test PASSED"
|
|
}
|
|
|
|
RunEnumerateInstanceExtensionPropertiesTest()
|
|
{
|
|
count=$(GTEST_FILTER=EnumerateInstanceExtensionProperties.Count \
|
|
./vk_loader_validation_tests count 2>&1 |
|
|
grep -o 'count=[0-9]\+' | sed 's/^.*=//')
|
|
|
|
if [ "$count" -gt 1 ]
|
|
then
|
|
diff \
|
|
<(GTEST_PRINT_TIME=0 \
|
|
GTEST_FILTER=EnumerateInstanceExtensionProperties.OnePass \
|
|
./vk_loader_validation_tests count "$count" properties 2>&1 |
|
|
grep 'properties') \
|
|
<(GTEST_PRINT_TIME=0 \
|
|
GTEST_FILTER=EnumerateInstanceExtensionProperties.TwoPass \
|
|
./vk_loader_validation_tests properties 2>&1 |
|
|
grep 'properties')
|
|
fi
|
|
ec=$?
|
|
|
|
if [ $ec -eq 1 ]
|
|
then
|
|
echo "EnumerateInstanceExtensionProperties OnePass vs TwoPass test FAILED - properties do not match" >&2
|
|
exit 1
|
|
fi
|
|
echo "EnumerateInstanceExtensionProperties OnePass vs TwoPass test PASSED"
|
|
}
|
|
|
|
./vk_loader_validation_tests
|
|
|
|
RunCreateInstanceTest
|
|
RunEnumerateInstanceLayerPropertiesTest
|
|
RunEnumerateInstanceExtensionPropertiesTest
|
|
|
|
# Test the wrap objects layer.
|
|
./run_wrap_objects_tests.sh || exit 1
|
|
|
|
popd > /dev/null
|