Add use of models provided by DrFran and Madders for testing.

They will be downloaded automatically when the test suite is built.
This commit is contained in:
Dale Glass 2022-11-27 01:11:16 +01:00
parent e9a9ee557b
commit 17f888c6e2
2 changed files with 82 additions and 2 deletions

View file

@ -1,9 +1,85 @@
# Declare dependencies
macro (setup_testcase_dependencies)
# link in the shared libraries
link_hifi_libraries(shared test-utils model-serializers networking model-networking hfm graphics gpu image)
# The test system is a bit unusual in how it works, and generates targets on its own.
# This macro will be called for each of them, so we want to add stuff only to the
# right targets.
if("${TARGET_NAME}" STREQUAL "model-serializers-ModelSerializersTests")
# Abuse the ExternalProject system to download files. There exists ExternalData, but it really wants to
# use some obscure hash-based naming system for some reason. I think it's preferrable to have human readable
# filenames.
# Provided by DrFran for testing.
ExternalProject_Add(
ukr_franny
PREFIX "models"
URL "https://testing-assets.overte.org/model-serializers/UkraineFranny.glb.gz"
URL_HASH SHA512=a0187ea19252b506621d34bb5652642e1d29832377fe2584d73fdb297ea353c3153c0bf9975c3b24f1d328b435b7081a1490c1948d20dbcd06f1516a5bb2972e
DOWNLOAD_NO_EXTRACT true CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
)
# Provided by DrFran for testing.
ExternalProject_Add(
dragon_franny
PREFIX "models"
URL "https://testing-assets.overte.org/model-serializers/DragonAvatar1.glb.gz"
URL_HASH SHA512=0c3b353ed3d7e9d6eaaaa9ec0026671ab0be1651182468828b8522f37d51d8a42f45269dd37bcdbeaa72b968872372a62ae1997cc1ceb40fdc30e6fb286aa263
DOWNLOAD_NO_EXTRACT true CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
)
# Provided by DrFran for testing.
ExternalProject_Add(
franny
PREFIX "models"
URL "https://testing-assets.overte.org/model-serializers/Franny.glb.gz"
URL_HASH SHA512=dddcdfa629fb2f8153ffa8d04aaca47974147a038f615b78ad1a56b2e6a07b267e63a5618f735e726d8e5da0c9dcd0db901d988a6f0aa08e5f6078b7d1d62ac9
DOWNLOAD_NO_EXTRACT true CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
)
# Provided by Madders for testing.
ExternalProject_Add(
madders1
PREFIX "models"
URL "https://testing-assets.overte.org/model-serializers/womanInTShirt.glb.gz"
URL_HASH SHA512=fca388c04de5a9e3ed05bd28b9021873f5f95e26bf9fbb525fd1940d9d3652b2d38d548db4826927b16cb4b8a8d2017f12b303cbd4ee52688716533f438cdbd7
DOWNLOAD_NO_EXTRACT true CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
)
# Provided by Madders for testing.
ExternalProject_Add(
madders2
PREFIX "models"
URL "https://testing-assets.overte.org/model-serializers/female-avatar-with-swords.glb.gz"
URL_HASH SHA512=8ef5d3e8c9031dfa1de1b81fcf1efd398f4a369b23f4cda7e2c709072ddd86ac4b61928dd04a7312ca88874f6d99c264e5681b0e6e48a9d08de9f297c4330098
DOWNLOAD_NO_EXTRACT true CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
)
# Generated by Dale Glass at Ready Player Me for testing.
ExternalProject_Add(
broken
PREFIX "models"
URL "https://testing-assets.overte.org/model-serializers/broken-2022-11-27.glb.gz"
URL_HASH SHA512=10193c35cc92ca3b760189bb9c308e4bd87f2424f02a38da91c21f4b472f6115af7248c64d827d98d0e7659b378cbf01591bec0c5b964f4d19388a10e5b83ffc
DOWNLOAD_NO_EXTRACT true CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
)
add_dependencies(${TARGET_NAME} ukr_franny)
add_dependencies(${TARGET_NAME} dragon_franny)
add_dependencies(${TARGET_NAME} franny)
add_dependencies(${TARGET_NAME} madders1)
add_dependencies(${TARGET_NAME} madders2)
add_dependencies(${TARGET_NAME} broken)
endif()
package_libraries_for_deployment()
endmacro ()

View file

@ -56,8 +56,12 @@ void ModelSerializersTests::loadGLTF_data() {
QTest::addColumn<bool>("expectWarnings");
QTest::addColumn<bool>("expectErrors");
QTest::newRow("crash1") << "635d84711260644e7e393e0b.glb.gz" << false << true;
QTest::newRow("crash2") << "dude.glb.gz" << false << true;
QTest::newRow("ready-player-me-good1") << "models/src/DragonAvatar1.glb.gz" << false << false;
QTest::newRow("ready-player-me-good2") << "models/src/UkraineFranny.glb.gz" << false << false;
QTest::newRow("ready-player-me-good3") << "models/src/Franny.glb.gz" << false << false;
QTest::newRow("ready-player-me-good4") << "models/src/womanInTShirt.glb.gz" << false << false;
QTest::newRow("ready-player-me-good5") << "models/src/female-avatar-with-swords.glb.gz" << false << false;
QTest::newRow("ready-player-me-broken1") << "models/src/broken-2022-11-27.glb.gz" << false << true;
}