diff options
Diffstat (limited to 'tests/auto/cmake/test_add_resources_binary_generated')
4 files changed, 57 insertions, 0 deletions
diff --git a/tests/auto/cmake/test_add_resources_binary_generated/CMakeLists.txt b/tests/auto/cmake/test_add_resources_binary_generated/CMakeLists.txt new file mode 100644 index 0000000000..df9ef0c3bb --- /dev/null +++ b/tests/auto/cmake/test_add_resources_binary_generated/CMakeLists.txt @@ -0,0 +1,35 @@ +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: BSD-3-Clause + +cmake_minimum_required(VERSION 3.16) + +project(test_add_resources_binary_generated) + +if (EXISTS "${CMAKE_CURRENT_LIST_DIR}/FindPackageHints.cmake") + include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHints.cmake") +endif() + +find_package(Qt6Core REQUIRED HINTS ${Qt6Tests_PREFIX_PATH}) + +qt6_add_executable(test_add_resources_binary_generated main.cpp) + +qt6_add_resources(test_add_resources_binary_generated resources1 FILES resource1.txt PREFIX "/" + OPTIONS "--binary") +qt6_add_resources(test_add_resources_binary_generated resources2 FILES resource2.txt PREFIX "/" + OPTIONS "--binary" + DESTINATION "${CMAKE_CURRENT_BINARY_DIR}/resources2_custom.rcc") + +target_compile_definitions(test_add_resources_binary_generated + PRIVATE + RESOURCE1_FULL_PATH="${CMAKE_CURRENT_BINARY_DIR}/resources1.rcc") +target_compile_definitions(test_add_resources_binary_generated + PRIVATE + RESOURCE2_FULL_PATH="${CMAKE_CURRENT_BINARY_DIR}/resources2_custom.rcc") + +if(NOT TARGET binary_resource_resources1) + message(FATAL_ERROR "Generated resources binary target was not created") +endif() + +if(NOT TARGET binary_resource_resources2) + message(FATAL_ERROR "Generated resources binary target was not created") +endif() diff --git a/tests/auto/cmake/test_add_resources_binary_generated/main.cpp b/tests/auto/cmake/test_add_resources_binary_generated/main.cpp new file mode 100644 index 0000000000..73177555d4 --- /dev/null +++ b/tests/auto/cmake/test_add_resources_binary_generated/main.cpp @@ -0,0 +1,20 @@ +// Copyright (C) 2020 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only + +#include <QFile> +#include <QResource> + +int main(int, char **) +{ + if (!QResource::registerResource(RESOURCE1_FULL_PATH) + || !QFile::exists(":/resource1.txt") + || !QResource::registerResource(RESOURCE2_FULL_PATH) + || !QFile::exists(":/resource2.txt")) { + return -1; + } + + // Avoid leaks + QResource::unregisterResource(RESOURCE1_FULL_PATH); + QResource::unregisterResource(RESOURCE2_FULL_PATH); + return 0; +} diff --git a/tests/auto/cmake/test_add_resources_binary_generated/resource1.txt b/tests/auto/cmake/test_add_resources_binary_generated/resource1.txt new file mode 100644 index 0000000000..bc06a6d721 --- /dev/null +++ b/tests/auto/cmake/test_add_resources_binary_generated/resource1.txt @@ -0,0 +1 @@ +Test resource1 diff --git a/tests/auto/cmake/test_add_resources_binary_generated/resource2.txt b/tests/auto/cmake/test_add_resources_binary_generated/resource2.txt new file mode 100644 index 0000000000..b8f9e67458 --- /dev/null +++ b/tests/auto/cmake/test_add_resources_binary_generated/resource2.txt @@ -0,0 +1 @@ +Test resource2 |