begin to move tests classes

This commit is contained in:
Andrei Yankovich 2022-08-09 00:03:17 +03:00
parent 8d688d1c1c
commit 650fba8709
104 changed files with 639 additions and 115 deletions

1
.gitignore vendored
View File

@ -85,3 +85,4 @@ install_manifest.txt
compile_commands.json compile_commands.json
CTestTestfile.cmake CTestTestfile.cmake
_deps _deps
src/LibDeploy/src/deploy_global.h

View File

@ -29,34 +29,35 @@ if (NOT QT_VERSION_MAJOR)
endif() endif()
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Test QUIET) find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Test QUIET)
include(submodules/CMake/QuasarApp.cmake) include(submodules/QuasarAppLib/CMake/QuasarApp.cmake)
updateGitVars() updateGitVars()
set(CQtDeployer_VERSION "0.${GIT_COMMIT_COUNT}.${GIT_COMMIT_HASH}") set(CQT_DEPLOYER_VERSION "1.6.${GIT_COMMIT_COUNT}.${GIT_COMMIT_HASH}")
set(CQtDeployer_PACKAGE_ID "quasarapp.core.CQtDeployer")
option(CQtDeployer_TESTS "This option disables or enables tests of the ${PROJECT_NAME} project" ON) option(CQT_DEPLOYER_TESTS "This option disables or enables tests of the ${PROJECT_NAME} project" ON)
option(CQtDeployer_EXAMPLE "This option disables or enables example app of the ${PROJECT_NAME} project" ON) option(CQT_DEPLOYER_TOOL "This option disables or enables example app of the ${PROJECT_NAME} project" ON)
if (ANDROID OR IOS OR NOT QT_VERSION_MAJOR OR QA_WASM32) if (ANDROID OR IOS OR NOT QT_VERSION_MAJOR OR QA_WASM32)
set(CQtDeployer_TESTS OFF CACHE BOOL "This option force disbled for ANDROID IOS QA_WASM32 and Not Qt projects" FORCE) set(CQT_DEPLOYER_TESTS OFF CACHE BOOL "This option force disbled for ANDROID IOS QA_WASM32 and Not Qt projects" FORCE)
endif() endif()
if (NOT QT_VERSION_MAJOR) if (NOT QT_VERSION_MAJOR)
set(CQtDeployer_EXAMPLE OFF CACHE BOOL "This option force disbled for Not Qt projects" FORCE) set(CQT_DEPLOYER_TOOL OFF CACHE BOOL "This option force disbled for Not Qt projects" FORCE)
endif() endif()
make_directory(Distro) make_directory(Distro)
initAll() initAll()
add_subdirectory(src/Library) add_subdirectory(submodules/QuasarAppLib)
if (DEFINED CQtDeployer_EXAMPLE) add_subdirectory(src/LibDeploy)
add_subdirectory(src/Example)
if (DEFINED CQT_DEPLOYER_TOOL)
add_subdirectory(src/CQtDeployer)
endif() endif()
if (CQtDeployer_TESTS) if (CQT_DEPLOYER_TESTS)
add_subdirectory(tests) add_subdirectory(tests)
else() else()
message("The ${PROJECT_NAME} tests is disabled.") message("The ${PROJECT_NAME} tests is disabled.")

View File

@ -43,7 +43,7 @@ else()
endif() endif()
target_link_libraries(${CURRENT_PROJECT} PUBLIC ${PROJECT_NAME}Library) target_link_libraries(${CURRENT_PROJECT} PUBLIC ${PROJECT_NAME}LibDeploy)
target_include_directories(${CURRENT_PROJECT} PUBLIC ${PUBLIC_INCUDE_DIR}) target_include_directories(${CURRENT_PROJECT} PUBLIC ${PUBLIC_INCUDE_DIR})
target_include_directories(${CURRENT_PROJECT} PRIVATE ${PRIVATE_INCUDE_DIR}) target_include_directories(${CURRENT_PROJECT} PRIVATE ${PRIVATE_INCUDE_DIR})
@ -51,79 +51,6 @@ target_include_directories(${CURRENT_PROJECT} PRIVATE ${PRIVATE_INCUDE_DIR})
SET(TARGET_DIR "${CMAKE_SOURCE_DIR}/Distro") SET(TARGET_DIR "${CMAKE_SOURCE_DIR}/Distro")
file(MAKE_DIRECTORY ${TARGET_DIR}) file(MAKE_DIRECTORY ${TARGET_DIR})
if (ANDROID)
set(ANDROID_PACKAGE_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/android CACHE INTERNAL "")
set(ENV{ANDROID_API_VERSION} 31)
set(ANDROID_API_VERSION $ENV{ANDROID_API_VERSION})
set(OPENSSL_ROOT_PATH "$ENV{OPENSSL_ROOT_DIR}")
set(CQtDeployer_EXTRA_LIBS
${PROJECT_NAME}Library
# libName
)
# find_package(Qt${QT_VERSION_MAJOR} COMPONENTS AndroidExtras REQUIRED)
# target_link_libraries(${CURRENT_PROJECT} PRIVATE Qt${QT_VERSION_MAJOR}::AndroidExtras)
if (SIGN_APP)
message("SIGN_APP")
addDeploySignedAPK(${CURRENT_PROJECT}
"${CMAKE_CURRENT_LIST_DIR}/android"
"QuasarAppProject"
"${SIGPATH}/quasarapp.keystore"
"${SIGPASS_QUASARAPP}"
"${TARGET_DIR}"
"${CQtDeployer_EXTRA_LIBS}")
else()
message("NO_SIGN_APP")
addDeployAPK(${CURRENT_PROJECT}
"${CMAKE_CURRENT_LIST_DIR}/android"
"${TARGET_DIR}"
"${CQtDeployer_EXTRA_LIBS}")
endif()
set(manifest_file "${CMAKE_CURRENT_SOURCE_DIR}/android/AndroidManifest.xml")
configure_file("${manifest_file}.in" ${manifest_file} @ONLY)
set(gradle_file "${CMAKE_CURRENT_SOURCE_DIR}/android/build.gradle")
configure_file("${gradle_file}.in" ${gradle_file} @ONLY)
file(GLOB java_files
"android/src/com/quasarapp/androidtools/*.java"
"android/*.xml"
"android/*.gradle"
"android/gradlew"
"android/gradle.*"
)
add_custom_target(${name}Android
SOURCES ${java_files}
)
elseif(IOS)
# set_xcode_property(${CURRENT_PROJECT} PRODUCT_BUNDLE_IDENTIFIER ${CHEATCARD_PACKAGE_ID} All)
set_target_properties(${CURRENT_PROJECT} PROPERTIES
MACOSX_BUNDLE_GUI_IDENTIFIER ${CQtDeployer_PACKAGE_ID}
MACOSX_BUNDLE_BUNDLE_VERSION ${CQtDeployer_VERSION}
MACOSX_BUNDLE_SHORT_VERSION_STRING ${CQtDeployer_VERSION}
)
else()
# Desctop deploying
message(GIT_COMMIT_COUNT = ${GIT_COMMIT_COUNT})
set(DeployFile "${CMAKE_CURRENT_SOURCE_DIR}/Deploy/CQtDeployer.json")
configure_file("${DeployFile}.in" ${DeployFile} @ONLY)
addDeployFromCustomFile("CQtDeployer" ${DeployFile})
endif()
if(QT_VERSION_MAJOR EQUAL 6) if(QT_VERSION_MAJOR EQUAL 6)
# Add This line if your project use the Quick module # Add This line if your project use the Quick module
# qt_import_qml_plugins(${CURRENT_PROJECT}) # qt_import_qml_plugins(${CURRENT_PROJECT})

View File

@ -4,11 +4,11 @@
"src/build/Debug/CQtDeployerEaxample.exe" "src/build/Debug/CQtDeployerEaxample.exe"
], ],
"clear": true, "clear": true,
"binPrefix": "/media/D/builds/build-CMakeProject-Desktop_Qt_6_1_3_GCC_64bit-Debug", "binPrefix": "/media/D/builds/build-CQtDeployerCmakePort-Desktop_Qt_5_15_2_GCC_64bit-Debug",
"libDir": [ "libDir": [
"/media/D/builds/CMakeProject", "/media/D/builds/CQtDeployerCmakePort",
"/home/andrei/Qt/5.15.2/gcc_64", "/home/andrei/Qt/5.15.2/gcc_64",
"/media/D/builds/build-CMakeProject-Desktop_Qt_6_1_3_GCC_64bit-Debug" "/media/D/builds/build-CQtDeployerCmakePort-Desktop_Qt_5_15_2_GCC_64bit-Debug"
], ],
"recursiveDepth": "10", "recursiveDepth": "10",
"deploySystem": false, "deploySystem": false,
@ -17,11 +17,11 @@
"qif": true, "qif": true,
"zip": true, "zip": true,
"ignoreEnv": [ "ignoreEnv": [
"/media/D/builds/CMakeProject/Distro" "/media/D/builds/CQtDeployerCmakePort/Distro"
], ],
"extraLib": "crypto", "extraLib": "crypto",
"targetDir": "/media/D/builds/CMakeProject/Distro", "targetDir": "/media/D/builds/CQtDeployerCmakePort/Distro",
"deployVersion": "0.84.1a139e7", "deployVersion": "",
} }

View File

@ -10,33 +10,31 @@ cmake_minimum_required(VERSION 3.18)
get_filename_component(CURRENT_PROJECT_DIR ${CMAKE_CURRENT_SOURCE_DIR} NAME) get_filename_component(CURRENT_PROJECT_DIR ${CMAKE_CURRENT_SOURCE_DIR} NAME)
set(CURRENT_PROJECT "${PROJECT_NAME}${CURRENT_PROJECT_DIR}") set(CURRENT_PROJECT "${PROJECT_NAME}${CURRENT_PROJECT_DIR}")
add_definitions(-DCQtDeployer_LIBRARY) add_definitions(-DCQT_DEPLOYER_LIBRARY)
file(GLOB_RECURSE SOURCE_CPP file(GLOB_RECURSE SOURCE_CPP
"src/*.cpp" "src/*.cpp"
"src/*.h" "src/*.h"
"src/Distributions/*.cpp"
"src/Distributions/*.h"
) )
if (${QT_VERSION_MAJOR}) file(GLOB_RECURSE SOURCE_QRC
file(GLOB_RECURSE SOURCE_QRC "*.qrc"
"*.qrc" "src/*.qrc"
) )
endif() set(PUBLIC_INCUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
set(PUBLIC_INCUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src/public")
set(PRIVATE_INCUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src/private")
add_library(${CURRENT_PROJECT} ${SOURCE_CPP} ${SOURCE_QRC}) add_library(${CURRENT_PROJECT} ${SOURCE_CPP} ${SOURCE_QRC})
if (${QT_VERSION_MAJOR}) target_link_libraries(${CURRENT_PROJECT} PUBLIC QuasarApp )
target_link_libraries(${CURRENT_PROJECT} PUBLIC Qt${QT_VERSION_MAJOR}::Core )
endif()
target_include_directories(${CURRENT_PROJECT} PUBLIC ${PUBLIC_INCUDE_DIR}) target_include_directories(${CURRENT_PROJECT} PUBLIC ${PUBLIC_INCUDE_DIR})
target_include_directories(${CURRENT_PROJECT} PRIVATE ${PRIVATE_INCUDE_DIR})
set(LANGS ${CMAKE_CURRENT_SOURCE_DIR}/languages/en.ts) set(LANGS ${CMAKE_CURRENT_SOURCE_DIR}/languages/en.ts)
@ -45,5 +43,5 @@ prepareQM(${CURRENT_PROJECT} ${CMAKE_CURRENT_SOURCE_DIR} "${LANGS}")
set(QML_IMPORT_PATH ${QML_IMPORT_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/src" CACHE STRING "" FORCE) set(QML_IMPORT_PATH ${QML_IMPORT_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/src" CACHE STRING "" FORCE)
set(global_file "${CMAKE_CURRENT_SOURCE_DIR}/src/public/CQtDeployer/global.h") set(global_file "${CMAKE_CURRENT_SOURCE_DIR}/src/deploy_global.h")
configure_file("${global_file}.in" ${global_file} @ONLY) configure_file("${global_file}.in" ${global_file} @ONLY)

View File

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

View File

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

View File

@ -7,12 +7,7 @@
#ifndef CQT_H #ifndef CQT_H
#define CQT_H #define CQT_H
#include "deployconfig.h"
#include "distrostruct.h" #include "distrostruct.h"
#include "envirement.h"
#include "ignorerule.h"
#include "targetdata.h"
#include "targetinfo.h"
#include <QJsonObject> #include <QJsonObject>
#include <QJsonDocument> #include <QJsonDocument>
@ -36,7 +31,7 @@ public:
bool smartMoveTargets(); bool smartMoveTargets();
const DeployConfig* config() const; const DeployConfig* config() const;
friend class deploytest; friend class DeployTargetTest;
private: private:

View File

@ -12,9 +12,10 @@
#define DEFAULT_COFIGURATION_FILE QString("CQtDeployer.json") #define DEFAULT_COFIGURATION_FILE QString("CQtDeployer.json")
#define DISTRO_DIR QString("DistributionKit") #define DISTRO_DIR QString("DistributionKit")
#define CQT_DEPLOYER_VERSION "@CQT_DEPLOYER_VERSION@"
#if defined(DEPLOY_LIBRARY) #if defined(CQT_DEPLOYER_LIBRARY)
# define DEPLOYSHARED_EXPORT Q_DECL_EXPORT # define DEPLOYSHARED_EXPORT Q_DECL_EXPORT
#else #else
# define DEPLOYSHARED_EXPORT Q_DECL_IMPORT # define DEPLOYSHARED_EXPORT Q_DECL_IMPORT

View File

@ -12,8 +12,7 @@
#include <QDebug> #include <QDebug>
#include <QFileInfo> #include <QFileInfo>
#include "deploy_global.h" #include "deploy_global.h"
#include "defines.h" #include <params.h>
#include "quasarapp.h"
enum MSVCVersion: int { enum MSVCVersion: int {
MSVC_Unknown = 0x0, MSVC_Unknown = 0x0,

View File

@ -18,9 +18,13 @@ file(GLOB_RECURSE SOURCE_CPP
set(PUBLIC_INCUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}") set(PUBLIC_INCUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
set(PUBLIC_INCUDE_DIR ${PUBLIC_INCUDE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/units") set(PUBLIC_INCUDE_DIR ${PUBLIC_INCUDE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/units")
get_filename_component(QT_QT_ROOT "${Qt${QT_VERSION_MAJOR}Core_DIR}/../../.." ABSOLUTE)
add_definitions(-DQT_BASE_DIR="${QT_QT_ROOT}")
add_definitions(-DTEST_BIN_DIR="${CMAKE_CURRENT_LIST_DIR}")
add_executable(${CURRENT_PROJECT} ${SOURCE_CPP}) add_executable(${CURRENT_PROJECT} ${SOURCE_CPP})
target_link_libraries(${CURRENT_PROJECT} PRIVATE Qt${QT_VERSION_MAJOR}::Test ${PROJECT_NAME}Library) target_link_libraries(${CURRENT_PROJECT} PRIVATE Qt${QT_VERSION_MAJOR}::Test ${PROJECT_NAME}LibDeploy)
target_include_directories(${CURRENT_PROJECT} PUBLIC ${PUBLIC_INCUDE_DIR}) target_include_directories(${CURRENT_PROJECT} PUBLIC ${PUBLIC_INCUDE_DIR})

View File

@ -0,0 +1,71 @@
//#
//# Copyright (C) 2020-2022 QuasarApp.
//# Distributed under the GPLv3 software license, see the accompanying
//# Everyone is permitted to copy and distribute verbatim copies
//# of this license document, but changing it is not allowed.
//#
#include "deploytargettest.h"
#include <configparser.h>
#include <dependenciesscanner.h>
#include <filemanager.h>
#include <packing.h>
#include <pluginsparser.h>
DeployTargetTest::DeployTargetTest() {
}
DeployTargetTest::~DeployTargetTest() {
}
void DeployTargetTest::test() {
FileManager file;
DependenciesScanner scan;
Packing pac(&file);
PluginsParser _pluginParser;
ConfigParser *deploy = new ConfigParser(&file, &_pluginParser, &scan, &pac);
QStringList targets;
targets << "./test/bins/execTarget.exe";
QVERIFY(deploy->setTargets(targets));
delete deploy;
targets.clear();
deploy = new ConfigParser(&file, &_pluginParser, &scan, &pac);
targets << "./test/bins/execTarget";
QVERIFY(deploy->setTargets(targets));
delete deploy;
targets.clear();
deploy = new ConfigParser(&file, &_pluginParser, &scan, &pac);
targets << "./test/bins/execTarget.exe" << "./test/bins/execTarget";
QVERIFY(deploy->setTargets(targets));
delete deploy;
targets.clear();
deploy = new ConfigParser(&file, &_pluginParser, &scan, &pac);
targets << "./test/bns/execTarget.exe";
QVERIFY(!deploy->setTargets(targets));
delete deploy;
targets.clear();
deploy = new ConfigParser(&file, &_pluginParser, &scan, &pac);
targets << "./test/bins/";
QVERIFY(deploy->setTargets(targets));
delete deploy;
targets.clear();
deploy = new ConfigParser(&file, &_pluginParser, &scan, &pac);
targets << "./test/bins/" << "./test/warning/";
QVERIFY(deploy->setTargets(targets));
delete deploy;
targets.clear();
}

View File

@ -0,0 +1,26 @@
//#
//# Copyright (C) 2020-2022 QuasarApp.
//# Distributed under the GPLv3 software license, see the accompanying
//# Everyone is permitted to copy and distribute verbatim copies
//# of this license document, but changing it is not allowed.
//#
#ifndef DeployTarget_TEST_H
#define DeployTarget_TEST_H
#include "testbase.h"
#include "testutils.h"
#include <QtTest>
class DeployTargetTest: public TestBase, protected TestUtils
{
public:
DeployTargetTest();
~DeployTargetTest();
void test();
};
#endif // DeployTarget_TEST_H

Some files were not shown because too many files have changed in this diff Show More