From 057b4428d8c479d68efe671fd878c50b29abd43e Mon Sep 17 00:00:00 2001 From: Burak Hancerli Date: Tue, 9 May 2023 11:42:32 +0200 Subject: [PATCH] QmlDesigner: Refactor QmlProjectManager tests Task-number: QDS-9743 Change-Id: Ia5e788fcebacef59ba12226e2c873f5cbf8954ba Reviewed-by: Marco Bubke --- src/plugins/qmlprojectmanager/CMakeLists.txt | 15 +- .../buildsystem/projectitem/converters.cpp | 2 +- .../projectitem/qmlprojectitem.cpp | 8 +- .../buildsystem/projectitem/qmlprojectitem.h | 3 +- .../auto/qml/qmlprojectmanager/CMakeLists.txt | 1 - .../projectitem/CMakeLists.txt | 25 - .../qmlprojectmanager/projectitem/README.md | 46 -- .../qmlprojectmanager/projectitem/common.h | 20 - .../converter/test-set-2/testfile.jsontoqml | 102 ---- .../converter/test-set-2/testfile.qmlproject | 112 ---- .../converter/test-set-2/testfile.qmltojson | 174 ------ .../converter/test-set-3/testfile.jsontoqml | 93 --- .../converter/test-set-3/testfile.qmlproject | 93 --- .../converter/test-set-3/testfile.qmltojson | 161 ------ .../converter/test-set-4/testfile.jsontoqml | 65 --- .../converter/test-set-4/testfile.qmlproject | 55 -- .../converter/test-set-4/testfile.qmltojson | 114 ---- .../projectitem/test-converters.cpp | 108 ---- .../projectitem/test-filefilters.cpp | 25 - .../projectitem/test-getters.cpp | 162 ------ .../projectitem/test-setters.cpp | 161 ------ .../projectitem/tst_projectitem.cpp | 8 - tests/unit/CMakeLists.txt | 1 + tests/unit/README.md | 49 ++ tests/unit/tools/CMakeLists.txt | 1 + .../tools/qmlprojectmanager/CMakeLists.txt | 16 + tests/unit/tools/qmlprojectmanager/main.cpp | 95 +++ tests/unit/unittest/CMakeLists.txt | 5 +- .../unit/unittest/google-using-declarations.h | 1 + tests/unit/unittest/modulescanner-test.cpp | 1 + .../unittest/qmlprojectmanager/CMakeLists.txt | 7 + .../qmlprojectmanager/converters-test.cpp | 94 +++ .../qmlprojectmanager}/data/README.md | 15 - .../converter/test-set-1/testfile.jsontoqml | 0 .../converter/test-set-1/testfile.qmlproject | 0 .../converter/test-set-1/testfile.qmltojson | 0 .../converter/test-set-2}/testfile.jsontoqml | 0 .../converter/test-set-2}/testfile.qmlproject | 0 .../converter/test-set-2}/testfile.qmltojson | 0 .../file-filters/MaterialBundle.qmlproject | 0 .../MaterialBundle.qmlproject.qtds | 0 .../data/file-filters/MaterialLibrary.qrc | 0 .../file-filters/asset_imports/CMakeLists.txt | 0 .../ComponentBundles/CMakeLists.txt | 0 .../MaterialBundle/AcrylicPaintMaterial.qml | 0 .../MaterialBundle/AluminiumMaterial.qml | 0 .../MaterialBundle/AsphaltMaterial.qml | 0 .../MaterialBundle/BrickMaterial.qml | 0 .../MaterialBundle/CMakeLists.txt | 0 .../CarPaintGlitterMaterial.qml | 0 .../MaterialBundle/CarPaintMaterial.qml | 0 .../MaterialBundle/CarbonFiberMaterial.qml | 0 .../MaterialBundle/CeramicMaterial.qml | 0 .../MaterialBundle/ChromeMaterial.qml | 0 .../MaterialBundle/ConcreteMaterial.qml | 0 .../MaterialBundle/CopperMaterial.qml | 0 .../MaterialBundle/FabricMaterial.qml | 0 .../MaterialBundle/FabricRoughMaterial.qml | 0 .../MaterialBundle/FabricSatinMaterial.qml | 0 .../MaterialBundle/GlassMaterial.qml | 0 .../MaterialBundle/GlassTintedMaterial.qml | 0 .../MaterialBundle/GoldMaterial.qml | 0 .../MaterialBundle/LeatherMaterial.qml | 0 .../MaterialBundle/MirrorMaterial.qml | 0 .../MaterialBundle/PaperMaterial.qml | 0 .../MaterialBundle/PlasticMatteMaterial.qml | 0 .../MaterialBundle/PlasticShinyMaterial.qml | 0 .../PlasticTexturedMaterial.qml | 0 .../MaterialBundle/RubberMaterial.qml | 0 .../MaterialBundle/SilverMaterial.qml | 0 .../MaterialBundle/SteelBrushedMaterial.qml | 0 .../MaterialBundle/SteelFloorMaterial.qml | 0 .../MaterialBundle/SteelMaterial.qml | 0 .../MaterialBundle/StoneMaterial.qml | 0 .../MaterialBundle/WaxMaterial.qml | 0 .../MaterialBundle/WoodMaterial.qml | 0 .../MaterialBundle/WoodParquetMaterial.qml | 0 .../MaterialBundle/WoodPlanksMaterial.qml | 0 .../MaterialBundle/_asset_ref.json | 0 .../designer/acrylicpaint.metainfo | 0 .../designer/aluminium.metainfo | 0 .../MaterialBundle/designer/asphalt.metainfo | 0 .../MaterialBundle/designer/brick.metainfo | 0 .../designer/carbonfiber.metainfo | 0 .../MaterialBundle/designer/carpaint.metainfo | 0 .../designer/carpaintglitter.metainfo | 0 .../MaterialBundle/designer/ceramic.metainfo | 0 .../MaterialBundle/designer/chrome.metainfo | 0 .../MaterialBundle/designer/concrete.metainfo | 0 .../MaterialBundle/designer/copper.metainfo | 0 .../MaterialBundle/designer/fabric.metainfo | 0 .../designer/fabricrough.metainfo | 0 .../designer/fabricsatin.metainfo | 0 .../MaterialBundle/designer/glass.metainfo | 0 .../designer/glasstinted.metainfo | 0 .../MaterialBundle/designer/gold.metainfo | 0 .../designer/images/material.png | 0 .../designer/images/material16.png | 0 .../designer/images/material@2x.png | 0 .../MaterialBundle/designer/leather.metainfo | 0 .../MaterialBundle/designer/mirror.metainfo | 0 .../MaterialBundle/designer/paper.metainfo | 0 .../designer/plasticmatte.metainfo | 0 .../designer/plasticshiny.metainfo | 0 .../designer/plastictextured.metainfo | 0 .../MaterialBundle/designer/rubber.metainfo | 0 .../MaterialBundle/designer/silver.metainfo | 0 .../MaterialBundle/designer/steel.metainfo | 0 .../designer/steelbrushed.metainfo | 0 .../designer/steelfloor.metainfo | 0 .../MaterialBundle/designer/stone.metainfo | 0 .../MaterialBundle/designer/wax.metainfo | 0 .../MaterialBundle/designer/wood.metainfo | 0 .../designer/woodparquet.metainfo | 0 .../designer/woodplanks.metainfo | 0 .../images/Asphalt010_2K_NormalGL.png | 0 .../images/Asphalt010_2K_Opacity.png | 0 .../images/Asphalt010_2K_Roughness.png | 0 .../images/Bricks026_2K_AmbientOcclusion.png | 0 .../images/Bricks026_2K_Color.png | 0 .../images/Bricks026_2K_NormalGL.png | 0 .../images/Bricks026_2K_Roughness.png | 0 .../images/Concrete032_2K_NormalGL.png | 0 .../images/Concrete032_2K_Roughness.png | 0 .../images/DiamondPlate001_2K_NormalGL.png | 0 .../images/DiamondPlate001_2K_Roughness.png | 0 .../images/Fabric004_2K_NormalGL.png | 0 .../images/Fabric030_2K_Displacement.png | 0 .../images/Fabric030_2K_NormalGL.png | 0 .../images/Fabric030_2K_Roughness.png | 0 .../images/Fabric031_2K_Displacement.png | 0 .../images/Fabric031_2K_NormalGL.png | 0 .../images/Fabric031_2K_Roughness.png | 0 .../MaterialBundle/images/LDR_RGB1_3.png | 0 .../images/Leather037_2K_Color.png | 0 .../images/Leather037_2K_NormalGL.png | 0 .../images/Leather037_2K_Roughness.png | 0 .../images/Metal009_2K_NormalGL.png | 0 .../images/Metal009_2K_Roughness.png | 0 .../images/Metal029_2K_Displacement.jpg | 0 .../images/Metal029_2K_Displacement.png | 0 .../images/Paint006_2K_AmbientOcclusion.png | 0 .../images/Paint006_2K_NormalGL.png | 0 .../images/Paint006_2K_Roughness.png | 0 .../images/Rock023_2K_AmbientOcclusion.png | 0 .../images/Rock023_2K_Color.png | 0 .../images/Rock023_2K_NormalGL.png | 0 .../images/Rock023_2K_Roughness.png | 0 .../images/Wood048_2K_Color.png | 0 .../images/Wood048_2K_NormalGL.png | 0 .../images/Wood048_2K_Roughness.png | 0 .../images/WoodFloor044_2K_Color.png | 0 .../images/WoodFloor044_2K_NormalGL.png | 0 .../images/WoodFloor044_2K_Roughness.png | 0 .../WoodFloor054_2K_AmbientOcclusion.png | 0 .../images/WoodFloor054_2K_Color.png | 0 .../images/WoodFloor054_2K_NormalGL.png | 0 .../images/WoodFloor054_2K_Roughness.png | 0 .../MaterialBundle/images/blurrynoise.tga | 0 .../MaterialBundle/images/noisenormal.png | 0 .../ComponentBundles/MaterialBundle/qmldir | 0 .../MaterialBundle/shaders/CMakeLists.txt | 0 .../MaterialBundle/shaders/SSS.frag | 0 .../MaterialBundle/shaders/SSS.vert | 0 .../MaterialBundle/shaders/carmat_simple.frag | 0 .../MaterialBundle/shaders/carmat_simple.vert | 0 .../shaders/carmat_simple_nf.frag | 0 .../shaders/carmat_simple_nf.vert | 0 .../MaterialBundle/shaders/glass.frag | 0 .../MaterialBundle/shaders/glass.vert | 0 .../MaterialBundle/shaders/satin.frag | 0 .../MaterialBundle/shaders/satin.vert | 0 .../data/file-filters/content/App.qml | 0 .../data/file-filters/content/CMakeLists.txt | 0 .../content/CustomRoundButton.qml | 0 .../file-filters/content/MaterialNames.qml | 0 .../file-filters/content/MouseRotator.qml | 0 .../data/file-filters/content/Screen01.ui.qml | 0 .../content/fonts/OpenSans-Bold.ttf | 0 .../content/fonts/OpenSans-Regular.ttf | 0 .../data/file-filters/content/fonts/fonts.txt | 0 .../content/images/Ground_ShadowMap.png | 0 .../content/images/HDR/dark_mode.png | 0 .../content/images/HDR/day_mode.png | 0 .../content/images/LDR_RGB1_3.png | 0 .../file-filters/content/images/QtLogo_HD.png | 0 .../content/images/UI/innerMesh.png | 0 .../content/images/UI/lightToggle.png | 0 .../content/images/UI/outerMesh.png | 0 .../content/images/UI/perfhudicon.png | 0 .../content/images/UI/perfhudicon_on.png | 0 .../file-filters/content/images/White.png | 0 .../file-filters/content/images/checkmark.png | 0 .../content/images/groundAlpha.png | 0 .../file-filters/content/images/qtlogo.png | 0 .../content/images/scratchmap.png | 0 .../file-filters/content/images/shadow.png | 0 .../content/images/vlkhcah_2K_AO.jpg | 0 .../content/images/vlkhcah_2K_Albedo.jpg | 0 .../content/images/vlkhcah_2K_Normal.jpg | 0 .../content/images/vlkhcah_2K_Roughness.jpg | 0 .../file-filters/content/meshes/floor.mesh | 0 .../content/meshes/materialBall.mesh | 0 .../data/file-filters/filelist.txt | 0 .../data/file-filters/imports/CMakeLists.txt | 0 .../imports/MaterialLibrary/CMakeLists.txt | 0 .../imports/MaterialLibrary/Constants.qml | 0 .../MaterialLibrary/DirectoryFontLoader.qml | 0 .../MaterialLibrary/EventListModel.qml | 0 .../MaterialLibrary/EventListSimulator.qml | 0 .../MaterialLibrary/designer/plugin.metainfo | 0 .../imports/MaterialLibrary/qmldir | 0 .../data/file-filters/main.qml | 0 .../data/file-filters/qmlcomponents | 0 .../data/file-filters/qmlmodules | 0 .../data/file-filters/qtquickcontrols2.conf | 0 .../data/file-filters/share.qrc | 0 .../data/file-filters/src/app_environment.h | 0 .../file-filters/src/import_qml_plugins.h | 0 .../data/file-filters/src/main.cpp | 0 .../data/file-filters/translations.db | 0 .../data/getter-setter/empty.qmlproject} | 0 .../data/getter-setter/notEmpty.qmlproject} | 0 .../qmlprojectmanager/projectitem-test.cpp | 539 ++++++++++++++++++ 224 files changed, 829 insertions(+), 1548 deletions(-) delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/CMakeLists.txt delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/README.md delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/common.h delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.jsontoqml delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmlproject delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmltojson delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.jsontoqml delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmlproject delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmltojson delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.jsontoqml delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmlproject delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmltojson delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/test-converters.cpp delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/test-filefilters.cpp delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/test-getters.cpp delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/test-setters.cpp delete mode 100644 tests/auto/qml/qmlprojectmanager/projectitem/tst_projectitem.cpp create mode 100644 tests/unit/README.md create mode 100644 tests/unit/tools/CMakeLists.txt create mode 100644 tests/unit/tools/qmlprojectmanager/CMakeLists.txt create mode 100644 tests/unit/tools/qmlprojectmanager/main.cpp create mode 100644 tests/unit/unittest/qmlprojectmanager/CMakeLists.txt create mode 100644 tests/unit/unittest/qmlprojectmanager/converters-test.cpp rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/README.md (75%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/converter/test-set-1/testfile.jsontoqml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/converter/test-set-1/testfile.qmlproject (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/converter/test-set-1/testfile.qmltojson (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5 => unit/unittest/qmlprojectmanager/data/converter/test-set-2}/testfile.jsontoqml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5 => unit/unittest/qmlprojectmanager/data/converter/test-set-2}/testfile.qmlproject (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5 => unit/unittest/qmlprojectmanager/data/converter/test-set-2}/testfile.qmltojson (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/MaterialBundle.qmlproject (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/MaterialBundle.qmlproject.qtds (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/MaterialLibrary.qrc (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/CMakeLists.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/CMakeLists.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AcrylicPaintMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AluminiumMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AsphaltMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/BrickMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CMakeLists.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintGlitterMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarbonFiberMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CeramicMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ChromeMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ConcreteMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CopperMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricRoughMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricSatinMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassTintedMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GoldMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/LeatherMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/MirrorMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PaperMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticMatteMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticShinyMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticTexturedMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/RubberMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SilverMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelBrushedMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelFloorMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/StoneMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WaxMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodParquetMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodPlanksMaterial.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/_asset_ref.json (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/acrylicpaint.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/aluminium.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/asphalt.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/brick.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carbonfiber.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaint.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaintglitter.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/ceramic.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/chrome.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/concrete.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/copper.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabric.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricrough.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricsatin.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glass.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glasstinted.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/gold.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material16.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material@2x.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/leather.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/mirror.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/paper.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticmatte.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticshiny.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plastictextured.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/rubber.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/silver.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steel.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelbrushed.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelfloor.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/stone.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wax.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wood.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodparquet.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodplanks.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Opacity.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_AmbientOcclusion.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Color.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric004_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Displacement.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Displacement.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/LDR_RGB1_3.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Color.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.jpg (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_AmbientOcclusion.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_AmbientOcclusion.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Color.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Color.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Color.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_AmbientOcclusion.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Color.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_NormalGL.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Roughness.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/blurrynoise.tga (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/noisenormal.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/qmldir (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/CMakeLists.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.frag (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.vert (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.frag (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.vert (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.frag (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.vert (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.frag (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.vert (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.frag (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.vert (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/App.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/CMakeLists.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/CustomRoundButton.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/MaterialNames.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/MouseRotator.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/Screen01.ui.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/fonts/OpenSans-Bold.ttf (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/fonts/OpenSans-Regular.ttf (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/fonts/fonts.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/Ground_ShadowMap.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/HDR/dark_mode.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/HDR/day_mode.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/LDR_RGB1_3.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/QtLogo_HD.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/UI/innerMesh.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/UI/lightToggle.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/UI/outerMesh.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/UI/perfhudicon.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/UI/perfhudicon_on.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/White.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/checkmark.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/groundAlpha.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/qtlogo.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/scratchmap.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/shadow.png (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/vlkhcah_2K_AO.jpg (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/vlkhcah_2K_Albedo.jpg (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/vlkhcah_2K_Normal.jpg (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/images/vlkhcah_2K_Roughness.jpg (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/meshes/floor.mesh (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/content/meshes/materialBall.mesh (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/filelist.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/CMakeLists.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/MaterialLibrary/CMakeLists.txt (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/MaterialLibrary/Constants.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/MaterialLibrary/DirectoryFontLoader.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/MaterialLibrary/EventListModel.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/MaterialLibrary/EventListSimulator.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/MaterialLibrary/designer/plugin.metainfo (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/imports/MaterialLibrary/qmldir (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/main.qml (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/qmlcomponents (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/qmlmodules (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/qtquickcontrols2.conf (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/share.qrc (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/src/app_environment.h (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/src/import_qml_plugins.h (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/src/main.cpp (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem => unit/unittest/qmlprojectmanager}/data/file-filters/translations.db (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem/data/getter-setter/testfile-2.qmlproject => unit/unittest/qmlprojectmanager/data/getter-setter/empty.qmlproject} (100%) rename tests/{auto/qml/qmlprojectmanager/projectitem/data/getter-setter/testfile-1.qmlproject => unit/unittest/qmlprojectmanager/data/getter-setter/notEmpty.qmlproject} (100%) create mode 100644 tests/unit/unittest/qmlprojectmanager/projectitem-test.cpp diff --git a/src/plugins/qmlprojectmanager/CMakeLists.txt b/src/plugins/qmlprojectmanager/CMakeLists.txt index 3b7209d05c7..21da457c214 100644 --- a/src/plugins/qmlprojectmanager/CMakeLists.txt +++ b/src/plugins/qmlprojectmanager/CMakeLists.txt @@ -6,7 +6,6 @@ add_qtc_plugin(QmlProjectManager SOURCES qmlprojectgen/qmlprojectgenerator.cpp qmlprojectgen/qmlprojectgenerator.h qmlprojectgen/templates.qrc - projectfilecontenttools.cpp projectfilecontenttools.h qdslandingpage.cpp qdslandingpage.h qdslandingpagetheme.cpp qdslandingpagetheme.h @@ -53,3 +52,17 @@ extend_qtc_plugin(QmlProjectManager generatecmakelistsconstants.h boilerplate.qrc ) + +add_qtc_library(QmlProjectManagerLib OBJECT + CONDITION Qt6_VERSION VERSION_GREATER_EQUAL 6.4.3 + EXCLUDE_FROM_INSTALL + DEPENDS + QmlJS Utils + INCLUDES + ${CMAKE_CURRENT_LIST_DIR} + SOURCES_PREFIX ${CMAKE_CURRENT_LIST_DIR}/buildsystem + SOURCES + projectitem/filefilteritems.cpp projectitem/filefilteritems.h + projectitem/qmlprojectitem.cpp projectitem/qmlprojectitem.h + projectitem/converters.cpp projectitem/converters.h +) diff --git a/src/plugins/qmlprojectmanager/buildsystem/projectitem/converters.cpp b/src/plugins/qmlprojectmanager/buildsystem/projectitem/converters.cpp index aa0abf8ffe2..0097611a4dd 100644 --- a/src/plugins/qmlprojectmanager/buildsystem/projectitem/converters.cpp +++ b/src/plugins/qmlprojectmanager/buildsystem/projectitem/converters.cpp @@ -337,7 +337,7 @@ QJsonObject qmlProjectTojson(const Utils::FilePath &projectFile) targetObject.insert("files", files); fileGroupsObject.insert(propsPair.first, targetObject); } else if (childNode->name().contains("shadertool", Qt::CaseInsensitive)) { - QStringList quotedArgs = childNode->property("args").value.toString().split('\"'); + QStringList quotedArgs = childNode->property("args").value.toString().split('\"', Qt::SkipEmptyParts); QStringList args; for (int i = 0; i < quotedArgs.size(); ++i) { // Each odd arg in this list is a single quoted argument, which we should diff --git a/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.cpp b/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.cpp index 04bd26476e2..5b56c8f37ca 100644 --- a/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.cpp +++ b/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.cpp @@ -18,8 +18,9 @@ namespace QmlProjectManager { //#define REWRITE_PROJECT_FILE_IN_JSON_FORMAT -QmlProjectItem::QmlProjectItem(const Utils::FilePath &filePath) +QmlProjectItem::QmlProjectItem(const Utils::FilePath &filePath, const bool skipRewrite) : m_projectFile(filePath) + , m_skipRewrite(skipRewrite) { if (initProjectObject()) setupFileFilters(); @@ -394,9 +395,8 @@ void QmlProjectItem::addShaderToolFile(const QString &file) void QmlProjectItem::insertAndUpdateProjectFile(const QString &key, const QJsonValue &value) { m_project[key] = value; -#ifndef TESTS_ENABLED_QMLPROJECTITEM - m_projectFile.writeFileContents(Converters::jsonToQmlProject(m_project).toUtf8()); -#endif + if (!m_skipRewrite) + m_projectFile.writeFileContents(Converters::jsonToQmlProject(m_project).toUtf8()); } } // namespace QmlProjectManager diff --git a/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.h b/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.h index 78b038b0378..83ef5ca0000 100644 --- a/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.h +++ b/src/plugins/qmlprojectmanager/buildsystem/projectitem/qmlprojectitem.h @@ -26,7 +26,7 @@ class QmlProjectItem : public QObject { Q_OBJECT public: - explicit QmlProjectItem(const Utils::FilePath &filePath); + explicit QmlProjectItem(const Utils::FilePath &filePath, const bool skipRewrite = false); bool isQt4McuProject() const; @@ -103,6 +103,7 @@ private: // runtime variables Utils::FilePath m_projectFile; // design studio project file QJsonObject m_project; // root project object + const bool m_skipRewrite; // initializing functions bool initProjectObject(); diff --git a/tests/auto/qml/qmlprojectmanager/CMakeLists.txt b/tests/auto/qml/qmlprojectmanager/CMakeLists.txt index 795b5a74265..f7c00d44bd5 100644 --- a/tests/auto/qml/qmlprojectmanager/CMakeLists.txt +++ b/tests/auto/qml/qmlprojectmanager/CMakeLists.txt @@ -1,2 +1 @@ add_subdirectory(fileformat) -add_subdirectory(projectitem) diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/CMakeLists.txt b/tests/auto/qml/qmlprojectmanager/projectitem/CMakeLists.txt deleted file mode 100644 index 20f1bd0054d..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/CMakeLists.txt +++ /dev/null @@ -1,25 +0,0 @@ -set(WITH_TESTS ON) - -find_package(Googletest MODULE) - -set(QmlProjectItemDir "${PROJECT_SOURCE_DIR}/src/plugins/qmlprojectmanager/buildsystem/projectitem") - -add_qtc_test(tst_qml_projectitem - DEPENDS QmlProjectManager Utils QmlJS Googletest - INCLUDES "${QmlProjectItemDir}" - DEFINES - QT_CREATOR - SRCDIR="${CMAKE_CURRENT_SOURCE_DIR}" - TESTDATA_DIR="${CMAKE_CURRENT_SOURCE_DIR}/data" - TESTS_ENABLED_QMLPROJECTITEM - SOURCES - tst_projectitem.cpp - test-getters.cpp - test-setters.cpp - test-converters.cpp - test-filefilters.cpp - common.h - "${QmlProjectItemDir}/qmlprojectitem.cpp" - "${QmlProjectItemDir}/converters.cpp" - "${QmlProjectItemDir}/filefilteritems.cpp" -) diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/README.md b/tests/auto/qml/qmlprojectmanager/projectitem/README.md deleted file mode 100644 index 60d308c5b77..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/README.md +++ /dev/null @@ -1,46 +0,0 @@ -# QmlProject ProjectItem Tests - -## Content - -This test bundle covers following functionalities of QmlProjectItem class; - -* **Getter Functions**: Tests if getter functions are returning correct types with correct values -* **Setter Functions**: Tests if setter functions are updating the internal JSON object as expected -* **Converter Functions:** Tests if QmlProjectToJson and JsonToQmlProject functions are working as expected -* **File Filter Functions:** Tests if file filters are initialized properly - -## Data set folder structure - -The current folder hierarchy is as following; - -```text -| data -| -> converter -| | -> test-set-1 -| | | -> testfile.qmlproject -| | | -> testfile.qmltojson -| | | -> testfile.jsontoqml -| | -> test-set-2 -| | | -> testfile.qmlproject -| | | -> testfile.qmltojson -| | | -> testfile.jsontoqml -| | -> test-set-.. -| | -> test-set-.. -| -> getter-setter -| | -> testfile-1.qmlproject -| | -> testfile-2.qmlproject -| -> file-filters -| | -> test-set-1 -| | -> test-set-... -``` - -## Further information - -Please see [data/README.md](data/README.md) for more information on the test set content. - -## Contribution - -Please update; - -* This README whenever you change the test content -* [data/README.md](data/README.md) whenever you update the `data` folder diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/common.h b/tests/auto/qml/qmlprojectmanager/projectitem/common.h deleted file mode 100644 index 2167a5d1444..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/common.h +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 - -#pragma once - -#include -#include -#include - -#include -#include - -#include - -static QDir testDataRootDir(QLatin1String(TESTDATA_DIR)); - -inline void PrintTo(const QString &qString, ::std::ostream *os) -{ - *os << qUtf8Printable(qString); -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.jsontoqml b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.jsontoqml deleted file mode 100644 index 19276581aa3..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.jsontoqml +++ /dev/null @@ -1,102 +0,0 @@ -\\ prop: json-converted -\\ prop: auto-generated - -import QmlProject - -Project { - mainFile: "content/App.qml" - mainUiFile: "Screen01.ui.qml" - targetDirectory: "/opt/MaterialLibrary" - widgetApp: true - importPaths: [ "imports","asset_imports" ] - - qdsVersion: "3.9" - quickVersion: "" - qt6Project: true - qtForMCUs: true - - multilanguageSupport: true - primaryLanguage: "en" - supportedLanguages: [ "en" ] - - Environment { - QT_AUTO_SCREEN_SCALE_FACTOR: "1" - QT_ENABLE_HIGHDPI_SCALING: "0" - QT_LOGGING_RULES: "qt.qml.connections=false" - QT_QUICK_CONTROLS_CONF: "qtquickcontrols2.conf" - } - - ShaderTool { - args: "-s --glsl "100 es,120,150" --hlsl 50 --msl 12" - files: [ "content/shaders/*" ] - } - - QmlFiles { - directory: "content" - } - - QmlFiles { - directory: "imports" - } - - QmlFiles { - directory: "asset_imports" - } - - JavaScriptFiles { - directory: "content" - } - - JavaScriptFiles { - directory: "imports" - } - - ImageFiles { - directory: "content" - } - - ImageFiles { - directory: "asset_imports" - } - - Files { - directory: "." - filters: "*.conf" - files: [ "qtquickcontrols2.conf" ] - } - - Files { - directory: "." - filters: "*.ttf;*.otf" - } - - Files { - directory: "asset_imports" - filters: "*.mesh" - } - - Files { - directory: "content" - filters: "*.mesh" - } - - Files { - directory: "." - filters: "qmldir" - } - - Files { - directory: "." - filters: "*.glsl;*.glslv;*.glslf;*.vsh;*.fsh;*.vert;*.frag" - } - - Files { - directory: "." - filters: "*.mp3;*.wav" - } - - Files { - directory: "." - filters: "*.mp4" - } -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmlproject b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmlproject deleted file mode 100644 index 479c20456be..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmlproject +++ /dev/null @@ -1,112 +0,0 @@ -import QmlProject - -Project { - mainFile: "content/App.qml" - mainUiFile: "Screen01.ui.qml" - - - /* Include .qml, .js, and image files from current directory and subdirectories */ - QmlFiles { - directory: "content" - } - - QmlFiles { - directory: "imports" - } - - JavaScriptFiles { - directory: "content" - } - - JavaScriptFiles { - directory: "imports" - } - - ImageFiles { - directory: "content" - } - - Files { - filter: "*.conf" - files: ["qtquickcontrols2.conf"] - } - - Files { - filter: "qmldir" - directory: "." - } - - Files { - filter: "*.ttf;*.otf" - } - - Files { - filter: "*.wav;*.mp3" - } - - Files { - filter: "*.mp4" - } - - Files { - filter: "*.glsl;*.glslv;*.glslf;*.vsh;*.fsh;*.vert;*.frag" - } - - Files { - filter: "*.mesh" - directory: "asset_imports" - } - - Files { - filter: "*.mesh" - directory: "content" - } - - Files { - filter: "*.qml" - directory: "asset_imports" - } - - ImageFiles { - directory: "asset_imports" - } - - Environment { - QT_QUICK_CONTROLS_CONF: "qtquickcontrols2.conf" - QT_AUTO_SCREEN_SCALE_FACTOR: "1" - QT_LOGGING_RULES: "qt.qml.connections=false" - QT_ENABLE_HIGHDPI_SCALING: "0" - /* Useful for debugging - QSG_VISUALIZE=batches - QSG_VISUALIZE=clip - QSG_VISUALIZE=changes - QSG_VISUALIZE=overdraw - */ - } - - qt6Project: true - - /* List of plugin directories passed to QML runtime */ - importPaths: [ "imports", "asset_imports" ] - - /* Required for deployment */ - targetDirectory: "/opt/MaterialLibrary" - - qdsVersion: "3.9" - - /* If any modules the project imports require widgets (e.g. QtCharts), widgetApp must be true */ - widgetApp: true - - /* args: Specifies command line arguments for qsb tool to generate shaders. - files: Specifies target files for qsb tool. If path is included, it must be relative to this file. - Wildcard '*' can be used in the file name part of the path. - e.g. files: [ "content/shaders/*.vert", "*.frag" ] */ - ShaderTool { - args: "-s --glsl \"100 es,120,150\" --hlsl 50 --msl 12" - files: [ "content/shaders/*" ] - } - - multilanguageSupport: true - supportedLanguages: ["en"] - primaryLanguage: "en" -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmltojson b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmltojson deleted file mode 100644 index 64aa062313e..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-2/testfile.qmltojson +++ /dev/null @@ -1,174 +0,0 @@ -{ - "deployment": { - "targetDirectory": "/opt/MaterialLibrary" - }, - "environment": { - "QT_AUTO_SCREEN_SCALE_FACTOR": "1", - "QT_ENABLE_HIGHDPI_SCALING": "0", - "QT_LOGGING_RULES": "qt.qml.connections=false", - "QT_QUICK_CONTROLS_CONF": "qtquickcontrols2.conf" - }, - "fileGroups": { - "config": { - "directories": [ - "." - ], - "files": [ - { - "name": "qtquickcontrols2.conf" - } - ], - "filters": [ - "*.conf" - ] - }, - "font": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.ttf", - "*.otf" - ] - }, - "image": { - "directories": [ - "content", - "asset_imports" - ], - "files": [ - ], - "filters": [ - "*.jpeg", - "*.jpg", - "*.png", - "*.svg", - "*.hdr", - ".ktx" - ] - }, - "javaScript": { - "directories": [ - "content", - "imports" - ], - "files": [ - ], - "filters": [ - "*.js", - "*.ts" - ] - }, - "meshes": { - "directories": [ - "asset_imports", - "content" - ], - "files": [ - ], - "filters": [ - "*.mesh" - ] - }, - "qml": { - "directories": [ - "content", - "imports", - "asset_imports" - ], - "files": [ - ], - "filters": [ - "*.qml" - ] - }, - "qmldir": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "qmldir" - ] - }, - "shader": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.glsl", - "*.glslv", - "*.glslf", - "*.vsh", - "*.fsh", - "*.vert", - "*.frag" - ] - }, - "sound": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.mp3", - "*.wav" - ] - }, - "video": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.mp4" - ] - } - }, - "fileVersion": 1, - "importPaths": [ - "imports", - "asset_imports" - ], - "language": { - "multiLanguageSupport": true, - "primaryLanguage": "en", - "supportedLanguages": [ - "en" - ] - }, - "mcuConfig": { - }, - "runConfig": { - "fileSelectors": [ - ], - "mainFile": "content/App.qml", - "mainUiFile": "Screen01.ui.qml", - "widgetApp": true - }, - "shaderTool": { - "args": [ - "-s", - "--glsl", - "\"100 es,120,150\"", - "--hlsl", - "50", - "--msl", - "12" - ], - "files": [ - "content/shaders/*" - ] - }, - "versions": { - "designStudio": "3.9", - "qt": "6" - } -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.jsontoqml b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.jsontoqml deleted file mode 100644 index 1964ce018d9..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.jsontoqml +++ /dev/null @@ -1,93 +0,0 @@ -\\ prop: json-converted -\\ prop: auto-generated - -import QmlProject - -Project { - mainFile: "content/App.qml" - mainUiFile: "content/MainScreen.ui.qml" - targetDirectory: "/opt/RobotArm" - widgetApp: true - importPaths: [ "imports","asset_imports","backend_mock" ] - - qdsVersion: "3.0" - quickVersion: "" - qt6Project: true - qtForMCUs: true - - multilanguageSupport: true - primaryLanguage: "en" - supportedLanguages: [ "en" ] - - Environment { - QT_AUTO_SCREEN_SCALE_FACTOR: "1" - QT_ENABLE_HIGHDPI_SCALING: "0" - QT_LOGGING_RULES: "qt.qml.connections=false" - QT_QUICK_CONTROLS_CONF: "qtquickcontrols2.conf" - } - - ShaderTool { - args: "" - files: [ ] - } - - QmlFiles { - directory: "content" - } - - QmlFiles { - directory: "imports" - } - - QmlFiles { - directory: "backend_mock" - } - - JavaScriptFiles { - directory: "content" - } - - JavaScriptFiles { - directory: "imports" - } - - ImageFiles { - directory: "content" - } - - Files { - directory: "." - filters: "*.conf" - files: [ "qtquickcontrols2.conf" ] - } - - Files { - directory: "." - filters: "*.ttf;*.otf" - } - - Files { - directory: "content" - filters: "*.mesh" - } - - Files { - directory: "." - filters: "qmldir" - } - - Files { - directory: "." - filters: "*.glsl;*.glslv;*.glslf;*.vsh;*.fsh;*.vert;*.frag" - } - - Files { - directory: "." - filters: "*.mp3;*.wav" - } - - Files { - directory: "." - filters: "*.mp4" - } -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmlproject b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmlproject deleted file mode 100644 index a9c59cdb665..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmlproject +++ /dev/null @@ -1,93 +0,0 @@ -import QmlProject - -Project { - mainFile: "content/App.qml" - mainUiFile: "content/MainScreen.ui.qml" - - /* Include .qml, .js, and image files from current directory and subdirectories */ - QmlFiles { - directory: "content" - } - - QmlFiles { - directory: "imports" - } - - QmlFiles { - directory: "backend_mock" - } - - JavaScriptFiles { - directory: "content" - } - - JavaScriptFiles { - directory: "imports" - } - - ImageFiles { - directory: "content" - } - - Files { - filter: "*.conf" - files: ["qtquickcontrols2.conf"] - } - - Files { - filter: "qmldir" - directory: "." - } - - Files { - filter: "*.ttf;*.otf" - } - - Files { - filter: "*.wav;*.mp3" - } - - Files { - filter: "*.mp4" - } - - Files { - filter: "*.glsl;*.glslv;*.glslf;*.vsh;*.fsh;*.vert;*.frag" - } - - Files { - filter: "*.mesh" - directory: "content" - } - - Environment { - QT_QUICK_CONTROLS_CONF: "qtquickcontrols2.conf" - QT_AUTO_SCREEN_SCALE_FACTOR: "1" - QT_LOGGING_RULES: "qt.qml.connections=false" - QT_ENABLE_HIGHDPI_SCALING: "0" - /* Useful for debugging - QSG_VISUALIZE=batches - QSG_VISUALIZE=clip - QSG_VISUALIZE=changes - QSG_VISUALIZE=overdraw - */ - } - - qt6Project: true - - /* List of plugin directories passed to QML runtime */ - importPaths: [ "imports", "asset_imports", "backend_mock" ] - - /* Required for deployment */ - targetDirectory: "/opt/RobotArm" - - qdsVersion: "3.0" - - /* If any modules the project imports require widgets (e.g. QtCharts), widgetApp must be true */ - widgetApp: true - - multilanguageSupport: true - supportedLanguages: ["en"] - primaryLanguage: "en" - -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmltojson b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmltojson deleted file mode 100644 index 1892b9f3f9c..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-3/testfile.qmltojson +++ /dev/null @@ -1,161 +0,0 @@ -{ - "deployment": { - "targetDirectory": "/opt/RobotArm" - }, - "environment": { - "QT_AUTO_SCREEN_SCALE_FACTOR": "1", - "QT_ENABLE_HIGHDPI_SCALING": "0", - "QT_LOGGING_RULES": "qt.qml.connections=false", - "QT_QUICK_CONTROLS_CONF": "qtquickcontrols2.conf" - }, - "fileGroups": { - "config": { - "directories": [ - "." - ], - "files": [ - { - "name": "qtquickcontrols2.conf" - } - ], - "filters": [ - "*.conf" - ] - }, - "font": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.ttf", - "*.otf" - ] - }, - "image": { - "directories": [ - "content" - ], - "files": [ - ], - "filters": [ - "*.jpeg", - "*.jpg", - "*.png", - "*.svg", - "*.hdr", - ".ktx" - ] - }, - "javaScript": { - "directories": [ - "content", - "imports" - ], - "files": [ - ], - "filters": [ - "*.js", - "*.ts" - ] - }, - "meshes": { - "directories": [ - "content" - ], - "files": [ - ], - "filters": [ - "*.mesh" - ] - }, - "qml": { - "directories": [ - "content", - "imports", - "backend_mock" - ], - "files": [ - ], - "filters": [ - "*.qml" - ] - }, - "qmldir": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "qmldir" - ] - }, - "shader": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.glsl", - "*.glslv", - "*.glslf", - "*.vsh", - "*.fsh", - "*.vert", - "*.frag" - ] - }, - "sound": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.mp3", - "*.wav" - ] - }, - "video": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.mp4" - ] - } - }, - "fileVersion": 1, - "importPaths": [ - "imports", - "asset_imports", - "backend_mock" - ], - "language": { - "multiLanguageSupport": true, - "primaryLanguage": "en", - "supportedLanguages": [ - "en" - ] - }, - "mcuConfig": { - }, - "runConfig": { - "fileSelectors": [ - ], - "mainFile": "content/App.qml", - "mainUiFile": "content/MainScreen.ui.qml", - "widgetApp": true - }, - "shaderTool": { - }, - "versions": { - "designStudio": "3.0", - "qt": "6" - } -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.jsontoqml b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.jsontoqml deleted file mode 100644 index 10a20bd9914..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.jsontoqml +++ /dev/null @@ -1,65 +0,0 @@ -\\ prop: json-converted -\\ prop: auto-generated - -import QmlProject - -Project { - mainFile: "OutrunHVAC.qml" - mainUiFile: "Screen01.ui.qml" - targetDirectory: "/opt/OutrunHVAC" - widgetApp: false - importPaths: [ "imports","asset_imports" ] - - qdsVersion: "" - quickVersion: "" - qt6Project: true - qtForMCUs: true - - multilanguageSupport: false - primaryLanguage: "" - supportedLanguages: [ ] - - Environment { - QMLSCENE_CORE_PROFILE: "true" - QT_AUTO_SCREEN_SCALE_FACTOR: "1" - QT_QUICK_CONTROLS_CONF: "qtquickcontrols2.conf" - } - - ShaderTool { - args: "" - files: [ ] - } - - QmlFiles { - directory: "." - } - - JavaScriptFiles { - directory: "." - } - - ImageFiles { - directory: "." - } - - Files { - directory: "." - filters: "*.conf" - files: [ "qtquickcontrols2.conf" ] - } - - Files { - directory: "." - filters: "*.ttf;*.otf" - } - - Files { - directory: "." - filters: "*.mesh;*.vert;*.frag" - } - - Files { - directory: "." - filters: "qmldir" - } -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmlproject b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmlproject deleted file mode 100644 index 9b2e466fda5..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmlproject +++ /dev/null @@ -1,55 +0,0 @@ -/* File generated by Qt Creator */ - -import QmlProject 1.1 - -Project { - mainFile: "OutrunHVAC.qml" - - /* Include .qml, .js, and image files from current directory and subdirectories */ - QmlFiles { - directory: "." - } - - JavaScriptFiles { - directory: "." - } - - ImageFiles { - directory: "." - } - - Files { - filter: "*.conf" - files: ["qtquickcontrols2.conf"] - } - - Files { - filter: "qmldir" - directory: "." - } - - Files { - filter: "*.ttf;*.otf" - } - - Files { - filter: "*.mesh;*.vert;*.frag" - directory: "." - } - - Environment { - QT_QUICK_CONTROLS_CONF: "qtquickcontrols2.conf" - QT_AUTO_SCREEN_SCALE_FACTOR: "1" - QMLSCENE_CORE_PROFILE: "true" - } - - qt6Project: true - - /* List of plugin directories passed to QML runtime */ - importPaths: [ "imports", "asset_imports" ] - - /* Required for deployment */ - targetDirectory: "/opt/OutrunHVAC" - - mainUiFile: "Screen01.ui.qml" -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmltojson b/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmltojson deleted file mode 100644 index 3ccd15a8390..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-4/testfile.qmltojson +++ /dev/null @@ -1,114 +0,0 @@ -{ - "deployment": { - "targetDirectory": "/opt/OutrunHVAC" - }, - "environment": { - "QMLSCENE_CORE_PROFILE": "true", - "QT_AUTO_SCREEN_SCALE_FACTOR": "1", - "QT_QUICK_CONTROLS_CONF": "qtquickcontrols2.conf" - }, - "fileGroups": { - "config": { - "directories": [ - "." - ], - "files": [ - { - "name": "qtquickcontrols2.conf" - } - ], - "filters": [ - "*.conf" - ] - }, - "font": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.ttf", - "*.otf" - ] - }, - "image": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.jpeg", - "*.jpg", - "*.png", - "*.svg", - "*.hdr", - ".ktx" - ] - }, - "javaScript": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.js", - "*.ts" - ] - }, - "meshes": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.mesh", - "*.vert", - "*.frag" - ] - }, - "qml": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "*.qml" - ] - }, - "qmldir": { - "directories": [ - "." - ], - "files": [ - ], - "filters": [ - "qmldir" - ] - } - }, - "fileVersion": 1, - "importPaths": [ - "imports", - "asset_imports" - ], - "language": { - }, - "mcuConfig": { - }, - "runConfig": { - "fileSelectors": [ - ], - "mainFile": "OutrunHVAC.qml", - "mainUiFile": "Screen01.ui.qml" - }, - "shaderTool": { - }, - "versions": { - "qt": "6" - } -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/test-converters.cpp b/tests/auto/qml/qmlprojectmanager/projectitem/test-converters.cpp deleted file mode 100644 index d232db3c0f0..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/test-converters.cpp +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 - -#include "common.h" - -#include "projectitem/converters.h" - -//#define REGENERATE_DATA_SETS - -using namespace QmlProjectManager; - -class DataSet -{ -public: - DataSet(const QString &dataSetName) - : m_dataSetDirectory(testDataRootDir.path() + "/converter/" + dataSetName) - , m_qmlProjectFile(Utils::FilePath::fromString( - QString(m_dataSetDirectory.absolutePath()).append("/testfile.qmlproject"))) - , m_jsonToQmlProjectFile(Utils::FilePath::fromString( - QString(m_dataSetDirectory.absolutePath()).append("/testfile.jsontoqml"))) - , m_qmlProjectToJsonFile(Utils::FilePath::fromString( - QString(m_dataSetDirectory.absolutePath()).append("/testfile.qmltojson"))) - {} - - QString qmlProjectContent() const - { - return (m_qmlProjectFile.fileContents() ? m_qmlProjectFile.fileContents().value() : QString{}); - } - QString jsonToQmlProjectContent() const - { - return m_jsonToQmlProjectFile.fileContents() ? m_jsonToQmlProjectFile.fileContents().value() - : QString{}; - } - QString qmlProjectToJsonContent() const - { - return m_qmlProjectToJsonFile.fileContents() ? m_qmlProjectToJsonFile.fileContents().value() - : QString{}; - } - - QString dataSetPath() const { return m_dataSetDirectory.absolutePath(); } - QString dataSetName() const { return m_dataSetDirectory.dirName(); } - Utils::FilePath qmlProjectFile() const { return m_qmlProjectFile; } - Utils::FilePath jsonToQmlProjectFile() const { return m_jsonToQmlProjectFile; } - Utils::FilePath qmlProjectToJsonFile() const { return m_qmlProjectToJsonFile; } - -private: - QDir m_dataSetDirectory; - Utils::FilePath m_qmlProjectFile; - Utils::FilePath m_jsonToQmlProjectFile; - Utils::FilePath m_qmlProjectToJsonFile; -}; - -QVector getDataSets() -{ - QVector dataSets; - QDir testDataDir(testDataRootDir.path().append("/converter")); - testDataDir.setNameFilters({"test-set-*"}); - foreach (const QString &directory, testDataDir.entryList()) { - dataSets.append(DataSet{directory}); - } - return dataSets; -} - -#ifndef REGENERATE_DATA_SETS -TEST(QmlProjectConverterTests, QmlProjectToJson) -{ - foreach (const DataSet &dataSet, getDataSets()) { - qDebug() << "Data set name:" << dataSet.dataSetName(); - - QString targetContent = dataSet.qmlProjectToJsonContent().replace("\r\n", "\n"); - - QJsonObject jsonObject{ - QmlProjectManager::Converters::qmlProjectTojson(dataSet.qmlProjectFile())}; - QString convertedContent{QJsonDocument(jsonObject).toJson()}; - - ASSERT_EQ(convertedContent.toStdString(), targetContent.toStdString()); - } -} - -TEST(QmlProjectConverterTests, JsonToQmlProject) -{ - foreach (const DataSet &dataSet, getDataSets()) { - qDebug() << "Data set name:" << dataSet.dataSetName(); - - QString targetContent = dataSet.jsonToQmlProjectContent().replace("\r\n", "\n"); - - QString jsonContent = dataSet.qmlProjectToJsonContent(); - QJsonObject jsonObject{QJsonDocument::fromJson(jsonContent.toLatin1()).object()}; - QString convertedContent = QmlProjectManager::Converters::jsonToQmlProject(jsonObject); - - ASSERT_EQ(convertedContent.toStdString(), targetContent.toStdString()); - } -} - -#else -TEST(QmlProjectConverterTests, RegenerateDataSets) -{ - foreach (const DataSet &dataSet, getDataSets()) { - qDebug() << "Regenerating data set:" << dataSet.dataSetName(); - QJsonObject qml2json = Converters::qmlProjectTojson(dataSet.qmlProjectFile()); - QString json2qml = Converters::jsonToQmlProject(qml2json); - - dataSet.qmlProjectToJsonFile().writeFileContents(QJsonDocument(qml2json).toJson()); - dataSet.jsonToQmlProjectFile().writeFileContents(json2qml.toUtf8()); - } - SUCCEED(); -} -#endif diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/test-filefilters.cpp b/tests/auto/qml/qmlprojectmanager/projectitem/test-filefilters.cpp deleted file mode 100644 index bb7a60f8b23..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/test-filefilters.cpp +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 - -#include "common.h" -#include "projectitem/qmlprojectitem.h" - -const Utils::FilePath testDataDir{ - Utils::FilePath::fromString(testDataRootDir.path() + "/file-filters")}; -const Utils::FilePath projectFilePath{testDataDir.pathAppended("/MaterialBundle.qmlproject")}; -const QmlProjectManager::QmlProjectItem projectItem{projectFilePath}; -const Utils::FilePath fileListPath{testDataDir.pathAppended("/filelist.txt")}; - -TEST(QmlProjectItemFileFilterTests, TestFileFilters) -{ - QStringList fileNameList = QString::fromUtf8(fileListPath.fileContents().value()).replace("\r\n", "\n").split("\n"); - - for (const Utils::FilePath &filePath : projectItem.files()) { - const QString fileName{filePath.relativePathFrom(testDataDir).path()}; - const int index = fileNameList.indexOf(fileName); - ASSERT_NE(index, -1) << "file_is_missing_in_the_filelist:: " + fileName.toStdString(); - fileNameList.remove(index); - } - - ASSERT_EQ(fileNameList.size(), 0); -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/test-getters.cpp b/tests/auto/qml/qmlprojectmanager/projectitem/test-getters.cpp deleted file mode 100644 index 9a3367e3cc7..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/test-getters.cpp +++ /dev/null @@ -1,162 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 - -#include "common.h" -#include "projectitem/qmlprojectitem.h" - -static QString testDataDir{testDataRootDir.path() + "/getter-setter"}; -static QString qmlProjectFilePath1(testDataDir + "/testfile-1.qmlproject"); -static QString qmlProjectFilePath2(testDataDir + "/testfile-2.qmlproject"); - -struct TestDataSet -{ -public: - const QmlProjectManager::QmlProjectItem projectItem1{ - Utils::FilePath::fromString(qmlProjectFilePath1)}; - QmlProjectManager::QmlProjectItem projectItem2{Utils::FilePath::fromString(qmlProjectFilePath2)}; -} dataSet; - -TEST(QmlProjectProjectItemGetterTests, GetMainFileProject) -{ - ASSERT_EQ(dataSet.projectItem1.mainFile(), "content/App.qml"); - ASSERT_EQ(dataSet.projectItem2.mainFile(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetMainUIFileProject) -{ - ASSERT_EQ(dataSet.projectItem1.mainUiFile(), "Screen01.ui.qml"); - ASSERT_EQ(dataSet.projectItem2.mainUiFile(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetMcuProject) -{ - ASSERT_EQ(dataSet.projectItem1.isQt4McuProject(), true); - ASSERT_EQ(dataSet.projectItem2.isQt4McuProject(), false); -} - -TEST(QmlProjectProjectItemGetterTests, GetQtVersion) -{ - ASSERT_EQ(dataSet.projectItem1.versionQt(), "6"); - ASSERT_EQ(dataSet.projectItem2.versionQt(), "5"); -} - -TEST(QmlProjectProjectItemGetterTests, GetQtQuickVersion) -{ - ASSERT_EQ(dataSet.projectItem1.versionQtQuick(), "6.2"); - ASSERT_EQ(dataSet.projectItem2.versionQtQuick(), QString()); -} - -TEST(QmlProjectProjectItemGetterTests, GetDesignStudioVersion) -{ - ASSERT_EQ(dataSet.projectItem1.versionDesignStudio(), "3.9"); - ASSERT_EQ(dataSet.projectItem2.versionDesignStudio(), QString()); -} - -TEST(QmlProjectProjectItemGetterTests, GetSourceDirectory) -{ - ASSERT_EQ(dataSet.projectItem1.sourceDirectory().path(), testDataDir); -} - -TEST(QmlProjectProjectItemGetterTests, GetTargetDirectory) -{ - ASSERT_EQ(dataSet.projectItem1.targetDirectory(), "/opt/targetDirectory"); - ASSERT_EQ(dataSet.projectItem2.targetDirectory(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetImportPaths) -{ - QString valsToCompare1 = dataSet.projectItem1.importPaths().join(";"); - QString valsToCompare2 = dataSet.projectItem2.importPaths().join(";"); - - ASSERT_EQ(valsToCompare1.toStdString(), "imports;asset_imports"); - ASSERT_EQ(valsToCompare2.toStdString(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetFileSelectors) -{ - QString valsToCompare1 = dataSet.projectItem1.fileSelectors().join(";"); - QString valsToCompare2 = dataSet.projectItem2.fileSelectors().join(";"); - - ASSERT_EQ(valsToCompare1.toStdString(), "WXGA;darkTheme;ShowIndicator"); - ASSERT_EQ(valsToCompare2.toStdString(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetMultiLanguageSupport) -{ - ASSERT_EQ(dataSet.projectItem1.multilanguageSupport(), true); - ASSERT_EQ(dataSet.projectItem2.multilanguageSupport(), false); -} - -TEST(QmlProjectProjectItemGetterTests, GetSupportedLanguages) -{ - QString valsToCompare1 = dataSet.projectItem1.supportedLanguages().join(";"); - QString valsToCompare2 = dataSet.projectItem2.supportedLanguages().join(";"); - - ASSERT_EQ(valsToCompare1.toStdString(), "en;fr"); - ASSERT_EQ(valsToCompare2.toStdString(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetPrimaryLanguage) -{ - ASSERT_EQ(dataSet.projectItem1.primaryLanguage(), "en"); - ASSERT_EQ(dataSet.projectItem2.primaryLanguage(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetWidgetApp) -{ - ASSERT_EQ(dataSet.projectItem1.widgetApp(), true); - ASSERT_EQ(dataSet.projectItem2.widgetApp(), false); -} - -TEST(QmlProjectProjectItemGetterTests, GetFileList) -{ - QString valsToCompare1, valsToCompare2; - - for (const auto &file : dataSet.projectItem1.files()) { - valsToCompare1.append(file.path()).append(";"); - } - - for (const auto &file : dataSet.projectItem2.files()) { - valsToCompare2.append(file.path()).append(";"); - } - - valsToCompare1.remove(valsToCompare1.length() - 1, 1); - valsToCompare2.remove(valsToCompare2.length() - 1, 1); - - ASSERT_EQ(valsToCompare1.toStdString(), - testDataDir.toStdString() + "/qtquickcontrols2.conf"); - ASSERT_EQ(valsToCompare2.toStdString(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetShaderToolArgs) -{ - QString valsToCompare1 = dataSet.projectItem1.shaderToolArgs().join(";"); - QString valsToCompare2 = dataSet.projectItem2.shaderToolArgs().join(";"); - - ASSERT_EQ(valsToCompare1.toStdString(), "-s;--glsl;\"100 es,120,150\";--hlsl;50;--msl;12"); - ASSERT_EQ(valsToCompare2.toStdString(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetShaderToolFiles) -{ - QString valsToCompare1 = dataSet.projectItem1.shaderToolFiles().join(";"); - QString valsToCompare2 = dataSet.projectItem2.shaderToolFiles().join(";"); - - ASSERT_EQ(valsToCompare1.toStdString(), "content/shaders/*"); - ASSERT_EQ(valsToCompare2.toStdString(), ""); -} - -TEST(QmlProjectProjectItemGetterTests, GetEnvironment) -{ - Utils::EnvironmentItems env1 = dataSet.projectItem1.environment(); - Utils::EnvironmentItems env2 = dataSet.projectItem2.environment(); - - ASSERT_EQ(env1[0].value.toStdString(), "qtquickcontrols2.conf"); - ASSERT_EQ(env2.isEmpty(), true); -} - -TEST(QmlProjectProjectItemGetterTests, GetForceFreeType) -{ - ASSERT_EQ(dataSet.projectItem1.forceFreeType(), true); - ASSERT_EQ(dataSet.projectItem2.forceFreeType(), false); -} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/test-setters.cpp b/tests/auto/qml/qmlprojectmanager/projectitem/test-setters.cpp deleted file mode 100644 index 30a99d9e212..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/test-setters.cpp +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 - -#include "common.h" -#include "projectitem/qmlprojectitem.h" - -using namespace QmlProjectManager; - -static QString filePath(testDataRootDir.path() + "/getter-setter/testfile-1.qmlproject"); -static QmlProjectItem projectItem{Utils::FilePath::fromString(filePath)}; - -#define call_mem_fn(ptr) ((projectItem).*(ptr)) - -template -void testerTemplate(void (QmlProjectItem::*setterFunc)(const T &), - T (QmlProjectItem::*getterFunc)(void) const, - const T &testingData) -{ - call_mem_fn(setterFunc)({testingData}); - ASSERT_EQ(call_mem_fn(getterFunc)(), testingData); -} - -template -void testerTemplate(void (QmlProjectItem::*setterFunc)(const T &), - T (QmlProjectItem::*getterFunc)(void) const, - void (QmlProjectItem::*adderFunc)(const Y &), - const Y &testingData) -{ - call_mem_fn(setterFunc)({testingData}); - ASSERT_EQ(call_mem_fn(getterFunc)(), T{testingData}); - - call_mem_fn(setterFunc)({}); - call_mem_fn(adderFunc)(testingData); - ASSERT_EQ(call_mem_fn(getterFunc)(), T{testingData}); -} - -TEST(QmlProjectProjectItemSetterTests, SetMainFileProject) -{ - testerTemplate(&QmlProjectItem::setMainFile, &QmlProjectItem::mainFile, "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetMainUIFileProject) -{ - testerTemplate(&QmlProjectItem::setMainUiFile, &QmlProjectItem::mainUiFile, "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetImportPaths) -{ - testerTemplate(&QmlProjectItem::setImportPaths, - &QmlProjectItem::importPaths, - &QmlProjectItem::addImportPath, - "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetFileSelectors) -{ - testerTemplate(&QmlProjectItem::setFileSelectors, - &QmlProjectItem::fileSelectors, - &QmlProjectItem::addFileSelector, - "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetMultiLanguageSupport) -{ - testerTemplate(&QmlProjectItem::setMultilanguageSupport, - &QmlProjectItem::multilanguageSupport, - true); - - testerTemplate(&QmlProjectItem::setMultilanguageSupport, - &QmlProjectItem::multilanguageSupport, - false); -} - -TEST(QmlProjectProjectItemSetterTests, SetSupportedLanguages) -{ - testerTemplate(&QmlProjectItem::setSupportedLanguages, - &QmlProjectItem::supportedLanguages, - &QmlProjectItem::addSupportedLanguage, - "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetPrimaryLanguage) -{ - testerTemplate(&QmlProjectItem::setPrimaryLanguage, - &QmlProjectItem::primaryLanguage, - "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetWidgetApp) -{ - testerTemplate(&QmlProjectItem::setWidgetApp, &QmlProjectItem::widgetApp, true); - testerTemplate(&QmlProjectItem::setWidgetApp, &QmlProjectItem::widgetApp, false); -} - -TEST(QmlProjectProjectItemSetterTests, SetShaderToolArgs) -{ - testerTemplate(&QmlProjectItem::setShaderToolArgs, - &QmlProjectItem::shaderToolArgs, - &QmlProjectItem::addShaderToolArg, - "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetShaderToolFiles) -{ - testerTemplate(&QmlProjectItem::setShaderToolFiles, - &QmlProjectItem::shaderToolFiles, - &QmlProjectItem::addShaderToolFile, - "testing"); -} - -TEST(QmlProjectProjectItemSetterTests, SetForceFreeType) -{ - testerTemplate(&QmlProjectItem::setForceFreeType, &QmlProjectItem::forceFreeType, true); - testerTemplate(&QmlProjectItem::setForceFreeType, &QmlProjectItem::forceFreeType, false); -} - -TEST(QmlProjectProjectItemSetterTests, SetQtVersion) -{ - testerTemplate(&QmlProjectItem::setVersionQt, &QmlProjectItem::versionQt, "6"); - testerTemplate(&QmlProjectItem::setVersionQt, &QmlProjectItem::versionQt, "5.3"); -} - -TEST(QmlProjectProjectItemSetterTests, SetQtQuickVersion) -{ - testerTemplate(&QmlProjectItem::setVersionQtQuick, &QmlProjectItem::versionQtQuick, "6"); - testerTemplate(&QmlProjectItem::setVersionQtQuick, &QmlProjectItem::versionQtQuick, "5.3"); -} - -TEST(QmlProjectProjectItemSetterTests, SetDesignStudio) -{ - testerTemplate(&QmlProjectItem::setVersionDesignStudio, &QmlProjectItem::versionDesignStudio, "6"); - testerTemplate(&QmlProjectItem::setVersionDesignStudio, &QmlProjectItem::versionDesignStudio, "5.3"); -} - -/** -TEST(QmlProjectProjectItemSetterTests, SetEnvironment) -{ - //FIXME: implement this -} - -*/ - -// not available as of now -//TEST(QmlProjectProjectItemSetterTests, SetMcuProject) -//{ -// ASSERT_EQ(dataSet.projectItem1.isQt4McuProject(), true); -// ASSERT_EQ(dataSet.projectItem2.isQt4McuProject(), false); -//} - -// not available as of now -//TEST(QmlProjectProjectItemSetterTests, SetSourceDirectory) -//{ -// ASSERT_EQ(dataSet.projectItem1.sourceDirectory(), testDataDir.path()); -//} - -// not available as of now -//TEST(QmlProjectProjectItemSetterTests, SetTargetDirectory) -//{ -// ASSERT_EQ(dataSet.projectItem1.targetDirectory(), "/opt/targetDirectory"); -// ASSERT_EQ(dataSet.projectItem2.targetDirectory(), ""); -//} diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/tst_projectitem.cpp b/tests/auto/qml/qmlprojectmanager/projectitem/tst_projectitem.cpp deleted file mode 100644 index 023f8ffdb26..00000000000 --- a/tests/auto/qml/qmlprojectmanager/projectitem/tst_projectitem.cpp +++ /dev/null @@ -1,8 +0,0 @@ - -#include "common.h" - -int main(int argc, char *argv[]) -{ - testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/tests/unit/CMakeLists.txt b/tests/unit/CMakeLists.txt index 3a36658ae4f..8971a289dea 100644 --- a/tests/unit/CMakeLists.txt +++ b/tests/unit/CMakeLists.txt @@ -37,3 +37,4 @@ if (NOT QT_CREATOR_API_DEFINED) endif() add_subdirectory(unittest) +add_subdirectory(tools) diff --git a/tests/unit/README.md b/tests/unit/README.md new file mode 100644 index 00000000000..38911b31ec2 --- /dev/null +++ b/tests/unit/README.md @@ -0,0 +1,49 @@ +# Contribution Guideline + +This document summarizes; + +* Best practices for writing tests +* How to add a new test +* How to build only specific test + +All tests here depend on the [GoogleTest][1] framework. + +## Best Practices + +We're following those patterns/approaches; + +* The Arrange, Act, and Assert (AAA) Pattern +* Given When Then (GWT) Pattern + +## Adding a New Unit Test + +* Please add your tests under `unit/unittest`. No subfolders are needed. +* Name your class as `foo-test.cpp` + +* Always include `googletest.h` header. Without that you may get the printer function can be broken because the are not anymore ODR (because of weak linking to printers for example). It is also necessary for nice printers, also adds Qt known matchers. + +## Building Tests + +> Note: +> When you're building the application from the terminal, you can set environment variables instead of settings CMake flags. +> The corresponding environment variable name is same with CMake variable name but with a 'QTC_' prefix. +> CMake Variable: WITH_TESTS +> Environment Variable: QTC_WITH_TESTS + +You have to enable tests with the following CMake variable otherwise the default configuration skips them. + +```bash +WITH_TESTS=ON +``` + +## Building Specific Tests + +After enabling tests you can use test-specific CMake flags to customize which tests should be built instead of building all of them at once. Please check the relevant CMake file to see which variable is required to enable that specific test. + +```bash +BUILD_TESTS_BY_DEFAULT=OFF +BUILD_TEST_UNITTEST=ON +BUILD_TEST_TST_QML_TESTCORE=ON +``` + +[1]: https://github.com/google/googletest diff --git a/tests/unit/tools/CMakeLists.txt b/tests/unit/tools/CMakeLists.txt new file mode 100644 index 00000000000..05b561491fc --- /dev/null +++ b/tests/unit/tools/CMakeLists.txt @@ -0,0 +1 @@ +add_subdirectory(qmlprojectmanager) diff --git a/tests/unit/tools/qmlprojectmanager/CMakeLists.txt b/tests/unit/tools/qmlprojectmanager/CMakeLists.txt new file mode 100644 index 00000000000..0f5a41c6331 --- /dev/null +++ b/tests/unit/tools/qmlprojectmanager/CMakeLists.txt @@ -0,0 +1,16 @@ +project(QmlProjectManagerConverterDataCreator) + +add_compile_definitions(QT_CREATOR) + +add_executable(${PROJECT_NAME} + main.cpp +) + +set_target_properties(${PROJECT_NAME} + PROPERTIES + OUTPUT_NAME "dataSetGenerator" +) + +target_link_libraries(${PROJECT_NAME} + QmlJS Utils ProjectExplorer QmlProjectManagerLib +) diff --git a/tests/unit/tools/qmlprojectmanager/main.cpp b/tests/unit/tools/qmlprojectmanager/main.cpp new file mode 100644 index 00000000000..688a8e6f540 --- /dev/null +++ b/tests/unit/tools/qmlprojectmanager/main.cpp @@ -0,0 +1,95 @@ +// Copyright (C) 2020 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 + +#include +#include + +class DataSet +{ +public: + DataSet(const QString &rootDir) + : m_rootDir(rootDir) + {} + void setDataSource(const QString &dataSetName) + { + m_dataSetDirectory.setPath(m_rootDir.path() + "/" + dataSetName); + + m_qmlProjectFile = Utils::FilePath::fromString( + QString(m_dataSetDirectory.absolutePath()).append("/testfile.qmlproject")); + m_jsonToQmlProjectFile = Utils::FilePath::fromString( + QString(m_dataSetDirectory.absolutePath()).append("/testfile.jsontoqml")); + m_qmlProjectToJsonFile = Utils::FilePath::fromString( + QString(m_dataSetDirectory.absolutePath()).append("/testfile.qmltojson")); + } + + QString qmlProjectContent() const + { + return (m_qmlProjectFile.fileContents() + ? QString::fromLatin1(m_qmlProjectFile.fileContents().value()) + : QString{}); + } + QString jsonToQmlProjectContent() const + { + return m_jsonToQmlProjectFile.fileContents() + ? QString::fromLatin1(m_jsonToQmlProjectFile.fileContents().value()) + : QString{}; + } + QString qmlProjectToJsonContent() const + { + return m_qmlProjectToJsonFile.fileContents() + ? QString::fromLatin1(m_qmlProjectToJsonFile.fileContents().value()) + : QString{}; + } + + QString dataSetPath() const { return m_dataSetDirectory.absolutePath(); } + QString dataSetName() const { return m_dataSetDirectory.dirName(); } + Utils::FilePath qmlProjectFile() const { return m_qmlProjectFile; } + Utils::FilePath jsonToQmlProjectFile() const { return m_jsonToQmlProjectFile; } + Utils::FilePath qmlProjectToJsonFile() const { return m_qmlProjectToJsonFile; } + +private: + QDir m_rootDir; + QDir m_dataSetDirectory; + Utils::FilePath m_qmlProjectFile; + Utils::FilePath m_jsonToQmlProjectFile; + Utils::FilePath m_qmlProjectToJsonFile; +}; + +int main(int argc, char **argv) +{ + const QString helpText{"./dataSetGenerator [path]\n" + "[path]: Path to the data set folders. The default is current dir.\n" + " Folder names should be in the form of test-set-x.\n"}; + + QDir dataSetPath{QDir::currentPath()}; + if (argc >= 2) { + dataSetPath.setPath(argv[1]); + } + + if (!dataSetPath.exists()) { + qDebug() << "Data path does not exist:" << dataSetPath.path() << Qt::endl; + qDebug().noquote() << helpText; + return -1; + } + + QStringList dataSetList{dataSetPath.entryList({"test-set-*"})}; + if (!dataSetList.size()) { + qDebug() << "No test sets are available under" << dataSetPath.path() << Qt::endl; + qDebug().noquote() << helpText; + return -1; + } + + DataSet dataSet(dataSetPath.path()); + for (const auto &dataSetName : dataSetList) { + dataSet.setDataSource(dataSetName); + + qDebug() << "Regenerating data set:" << dataSet.dataSetName(); + QJsonObject qml2json = QmlProjectManager::Converters::qmlProjectTojson( + dataSet.qmlProjectFile()); + QString json2qml = QmlProjectManager::Converters::jsonToQmlProject(qml2json); + + dataSet.qmlProjectToJsonFile().writeFileContents(QJsonDocument(qml2json).toJson()); + dataSet.jsonToQmlProjectFile().writeFileContents(json2qml.toUtf8()); + } + return 0; +} diff --git a/tests/unit/unittest/CMakeLists.txt b/tests/unit/unittest/CMakeLists.txt index 3c8a5652436..d0fde6d5d9a 100644 --- a/tests/unit/unittest/CMakeLists.txt +++ b/tests/unit/unittest/CMakeLists.txt @@ -35,7 +35,8 @@ add_qtc_test(unittest GTEST UNIT_TESTS DONT_CHECK_MESSAGE_COUNTER QTC_RESOURCE_DIR="${CMAKE_CURRENT_LIST_DIR}/../../../share/qtcreator" - TESTDATA_DIR="${CMAKE_CURRENT_BINARY_DIR}/data" + TESTDATA_DIR="${CMAKE_CURRENT_SOURCE_DIR}/data" + UNITTEST_DIR="${CMAKE_CURRENT_SOURCE_DIR}" TEST_RELATIVE_LIBEXEC_PATH="${TEST_RELATIVE_LIBEXEC_PATH}" QT6_INSTALL_PREFIX="${QT6_INSTALL_PREFIX}" QDS_MODEL_USE_PROJECTSTORAGEINTERFACE @@ -368,3 +369,5 @@ set_property(SOURCE ${PROJECTSTORAGE_EXCLUDED_SOURCES} PROPERTY SKIP_AUTOMOC ON) file(GLOB UNITTEST_EXCLUDED_SOURCES *.cpp) set_property(SOURCE ${UNITTEST_EXCLUDED_SOURCES} PROPERTY SKIP_AUTOMOC ON) + +add_subdirectory(qmlprojectmanager) diff --git a/tests/unit/unittest/google-using-declarations.h b/tests/unit/unittest/google-using-declarations.h index 6b2cd4721dd..198bbce7842 100644 --- a/tests/unit/unittest/google-using-declarations.h +++ b/tests/unit/unittest/google-using-declarations.h @@ -56,5 +56,6 @@ using testing::StrEq; using testing::Throw; using testing::TypedEq; using testing::UnorderedElementsAre; +using testing::UnorderedElementsAreArray; using testing::VariantWith; using testing::WithArg; diff --git a/tests/unit/unittest/modulescanner-test.cpp b/tests/unit/unittest/modulescanner-test.cpp index b4632e0cb41..554e3fc8398 100644 --- a/tests/unit/unittest/modulescanner-test.cpp +++ b/tests/unit/unittest/modulescanner-test.cpp @@ -118,6 +118,7 @@ TEST_F(ModuleScanner, Version) scanner.scan(QStringList{TESTDATA_DIR "/modulescanner"}); ASSERT_THAT(scanner.modules(), ElementsAre(AllOf(UrlProperty("Example"), VersionProperty("1.3")))); + } TEST_F(ModuleScanner, NoVersion) diff --git a/tests/unit/unittest/qmlprojectmanager/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/CMakeLists.txt new file mode 100644 index 00000000000..9b5037fc527 --- /dev/null +++ b/tests/unit/unittest/qmlprojectmanager/CMakeLists.txt @@ -0,0 +1,7 @@ +extend_qtc_test(unittest + DEPENDS + QmlProjectManagerLib + SOURCES + converters-test.cpp + projectitem-test.cpp +) diff --git a/tests/unit/unittest/qmlprojectmanager/converters-test.cpp b/tests/unit/unittest/qmlprojectmanager/converters-test.cpp new file mode 100644 index 00000000000..efa2b647aeb --- /dev/null +++ b/tests/unit/unittest/qmlprojectmanager/converters-test.cpp @@ -0,0 +1,94 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 + +#include "googletest.h" // IWYU pragma: keep + +#include + +#include + +namespace { +constexpr QLatin1String localTestDataDir{UNITTEST_DIR "/qmlprojectmanager/data"}; + +class DataSet : public testing::TestWithParam +{ +public: + void setDataSource(const QString &dataSetName) + { + m_dataSetDirectory.setPath(localTestDataDir + "/converter/" + dataSetName); + + m_qmlProjectFile = Utils::FilePath::fromString( + QString(m_dataSetDirectory.absolutePath()).append("/testfile.qmlproject")); + m_jsonToQmlProjectFile = Utils::FilePath::fromString( + QString(m_dataSetDirectory.absolutePath()).append("/testfile.jsontoqml")); + m_qmlProjectToJsonFile = Utils::FilePath::fromString( + QString(m_dataSetDirectory.absolutePath()).append("/testfile.qmltojson")); + } + + QString qmlProjectContent() const + { + return (m_qmlProjectFile.fileContents() + ? QString::fromLatin1(m_qmlProjectFile.fileContents().value()) + : QString{}); + } + QString jsonToQmlProjectContent() const + { + return m_jsonToQmlProjectFile.fileContents() + ? QString::fromLatin1(m_jsonToQmlProjectFile.fileContents().value()) + : QString{}; + } + QString qmlProjectToJsonContent() const + { + return m_qmlProjectToJsonFile.fileContents() + ? QString::fromLatin1(m_qmlProjectToJsonFile.fileContents().value()) + : QString{}; + } + + QString dataSetPath() const { return m_dataSetDirectory.absolutePath(); } + QString dataSetName() const { return m_dataSetDirectory.dirName(); } + Utils::FilePath qmlProjectFile() const { return m_qmlProjectFile; } + Utils::FilePath jsonToQmlProjectFile() const { return m_jsonToQmlProjectFile; } + Utils::FilePath qmlProjectToJsonFile() const { return m_qmlProjectToJsonFile; } + +private: + QDir m_dataSetDirectory; + Utils::FilePath m_qmlProjectFile; + Utils::FilePath m_jsonToQmlProjectFile; + Utils::FilePath m_qmlProjectToJsonFile; +}; + +INSTANTIATE_TEST_SUITE_P(ConverterTests, + DataSet, + ::testing::Values(QString("test-set-1"), QString("test-set-2"))); + +TEST_P(DataSet, QmlProjectToJson) +{ + // GIVEN + setDataSource(GetParam()); + QString targetContent = qmlProjectToJsonContent().replace("\r\n", "\n"); + auto qmlFile = qmlProjectFile(); + + // WHEN + auto jsonObject = QmlProjectManager::Converters::qmlProjectTojson(qmlFile); + + // THEN + QString convertedContent{QString::fromLatin1(QJsonDocument(jsonObject).toJson())}; + ASSERT_THAT(convertedContent, Eq(targetContent)); +} + +TEST_P(DataSet, JsonToQmlProject) +{ + // GIVEN + setDataSource(GetParam()); + QString targetContent = jsonToQmlProjectContent().replace("\r\n", "\n"); + auto jsonContent = qmlProjectToJsonContent().toLatin1(); + + // WHEN + auto jsonObject{QJsonDocument::fromJson(jsonContent).object()}; + + // THEN + QString convertedContent = QmlProjectManager::Converters::jsonToQmlProject(jsonObject); + ASSERT_THAT(convertedContent, Eq(targetContent)); +} + +} // namespace diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/README.md b/tests/unit/unittest/qmlprojectmanager/data/README.md similarity index 75% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/README.md rename to tests/unit/unittest/qmlprojectmanager/data/README.md index 309d453e98e..0edd94edd93 100644 --- a/tests/auto/qml/qmlprojectmanager/projectitem/data/README.md +++ b/tests/unit/unittest/qmlprojectmanager/data/README.md @@ -22,21 +22,6 @@ Test functions iterate over the "test-set-*" folders and run the tests by using ### test-set-2 -* **purpose**: testing complex qmlproject file convertion -* **origin**: material bundle example - -### test-set-3 - -* **purpose**: testing complex qmlproject file convertion -* **origin**: robot arm example - -### test-set-4 - -* **purpose**: testing complex qmlproject file convertion -* **origin**: outrun hvac example - -### test-set-5 - * **purpose**: testing fileselectors * **origin**: file selectors example from playground diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-1/testfile.jsontoqml b/tests/unit/unittest/qmlprojectmanager/data/converter/test-set-1/testfile.jsontoqml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-1/testfile.jsontoqml rename to tests/unit/unittest/qmlprojectmanager/data/converter/test-set-1/testfile.jsontoqml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-1/testfile.qmlproject b/tests/unit/unittest/qmlprojectmanager/data/converter/test-set-1/testfile.qmlproject similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-1/testfile.qmlproject rename to tests/unit/unittest/qmlprojectmanager/data/converter/test-set-1/testfile.qmlproject diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-1/testfile.qmltojson b/tests/unit/unittest/qmlprojectmanager/data/converter/test-set-1/testfile.qmltojson similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-1/testfile.qmltojson rename to tests/unit/unittest/qmlprojectmanager/data/converter/test-set-1/testfile.qmltojson diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5/testfile.jsontoqml b/tests/unit/unittest/qmlprojectmanager/data/converter/test-set-2/testfile.jsontoqml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5/testfile.jsontoqml rename to tests/unit/unittest/qmlprojectmanager/data/converter/test-set-2/testfile.jsontoqml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5/testfile.qmlproject b/tests/unit/unittest/qmlprojectmanager/data/converter/test-set-2/testfile.qmlproject similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5/testfile.qmlproject rename to tests/unit/unittest/qmlprojectmanager/data/converter/test-set-2/testfile.qmlproject diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5/testfile.qmltojson b/tests/unit/unittest/qmlprojectmanager/data/converter/test-set-2/testfile.qmltojson similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/converter/test-set-5/testfile.qmltojson rename to tests/unit/unittest/qmlprojectmanager/data/converter/test-set-2/testfile.qmltojson diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/MaterialBundle.qmlproject b/tests/unit/unittest/qmlprojectmanager/data/file-filters/MaterialBundle.qmlproject similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/MaterialBundle.qmlproject rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/MaterialBundle.qmlproject diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/MaterialBundle.qmlproject.qtds b/tests/unit/unittest/qmlprojectmanager/data/file-filters/MaterialBundle.qmlproject.qtds similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/MaterialBundle.qmlproject.qtds rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/MaterialBundle.qmlproject.qtds diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/MaterialLibrary.qrc b/tests/unit/unittest/qmlprojectmanager/data/file-filters/MaterialLibrary.qrc similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/MaterialLibrary.qrc rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/MaterialLibrary.qrc diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/CMakeLists.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/CMakeLists.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/CMakeLists.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/CMakeLists.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/CMakeLists.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/CMakeLists.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AcrylicPaintMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AcrylicPaintMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AcrylicPaintMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AcrylicPaintMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AluminiumMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AluminiumMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AluminiumMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AluminiumMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AsphaltMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AsphaltMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AsphaltMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/AsphaltMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/BrickMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/BrickMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/BrickMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/BrickMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CMakeLists.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CMakeLists.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CMakeLists.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintGlitterMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintGlitterMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintGlitterMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintGlitterMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarPaintMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarbonFiberMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarbonFiberMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarbonFiberMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CarbonFiberMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CeramicMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CeramicMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CeramicMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CeramicMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ChromeMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ChromeMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ChromeMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ChromeMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ConcreteMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ConcreteMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ConcreteMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/ConcreteMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CopperMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CopperMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CopperMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/CopperMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricRoughMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricRoughMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricRoughMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricRoughMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricSatinMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricSatinMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricSatinMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/FabricSatinMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassTintedMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassTintedMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassTintedMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GlassTintedMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GoldMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GoldMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GoldMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/GoldMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/LeatherMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/LeatherMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/LeatherMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/LeatherMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/MirrorMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/MirrorMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/MirrorMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/MirrorMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PaperMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PaperMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PaperMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PaperMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticMatteMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticMatteMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticMatteMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticMatteMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticShinyMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticShinyMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticShinyMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticShinyMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticTexturedMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticTexturedMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticTexturedMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/PlasticTexturedMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/RubberMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/RubberMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/RubberMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/RubberMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SilverMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SilverMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SilverMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SilverMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelBrushedMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelBrushedMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelBrushedMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelBrushedMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelFloorMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelFloorMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelFloorMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelFloorMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/SteelMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/StoneMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/StoneMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/StoneMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/StoneMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WaxMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WaxMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WaxMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WaxMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodParquetMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodParquetMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodParquetMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodParquetMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodPlanksMaterial.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodPlanksMaterial.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodPlanksMaterial.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/WoodPlanksMaterial.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/_asset_ref.json b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/_asset_ref.json similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/_asset_ref.json rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/_asset_ref.json diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/acrylicpaint.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/acrylicpaint.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/acrylicpaint.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/acrylicpaint.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/aluminium.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/aluminium.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/aluminium.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/aluminium.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/asphalt.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/asphalt.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/asphalt.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/asphalt.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/brick.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/brick.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/brick.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/brick.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carbonfiber.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carbonfiber.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carbonfiber.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carbonfiber.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaint.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaint.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaint.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaint.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaintglitter.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaintglitter.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaintglitter.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/carpaintglitter.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/ceramic.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/ceramic.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/ceramic.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/ceramic.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/chrome.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/chrome.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/chrome.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/chrome.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/concrete.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/concrete.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/concrete.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/concrete.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/copper.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/copper.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/copper.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/copper.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabric.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabric.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabric.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabric.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricrough.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricrough.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricrough.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricrough.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricsatin.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricsatin.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricsatin.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/fabricsatin.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glass.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glass.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glass.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glass.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glasstinted.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glasstinted.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glasstinted.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/glasstinted.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/gold.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/gold.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/gold.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/gold.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material16.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material16.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material16.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material16.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material@2x.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material@2x.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material@2x.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/images/material@2x.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/leather.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/leather.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/leather.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/leather.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/mirror.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/mirror.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/mirror.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/mirror.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/paper.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/paper.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/paper.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/paper.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticmatte.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticmatte.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticmatte.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticmatte.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticshiny.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticshiny.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticshiny.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plasticshiny.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plastictextured.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plastictextured.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plastictextured.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/plastictextured.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/rubber.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/rubber.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/rubber.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/rubber.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/silver.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/silver.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/silver.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/silver.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steel.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steel.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steel.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steel.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelbrushed.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelbrushed.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelbrushed.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelbrushed.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelfloor.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelfloor.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelfloor.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/steelfloor.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/stone.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/stone.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/stone.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/stone.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wax.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wax.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wax.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wax.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wood.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wood.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wood.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/wood.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodparquet.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodparquet.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodparquet.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodparquet.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodplanks.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodplanks.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodplanks.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/designer/woodplanks.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Opacity.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Opacity.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Opacity.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Opacity.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Asphalt010_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_AmbientOcclusion.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_AmbientOcclusion.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_AmbientOcclusion.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_AmbientOcclusion.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Color.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Color.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Color.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Color.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Bricks026_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Concrete032_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/DiamondPlate001_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric004_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric004_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric004_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric004_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Displacement.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Displacement.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Displacement.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Displacement.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric030_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Displacement.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Displacement.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Displacement.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Displacement.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Fabric031_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/LDR_RGB1_3.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/LDR_RGB1_3.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/LDR_RGB1_3.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/LDR_RGB1_3.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Color.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Color.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Color.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Color.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Leather037_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal009_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.jpg b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.jpg similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.jpg rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.jpg diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Metal029_2K_Displacement.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_AmbientOcclusion.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_AmbientOcclusion.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_AmbientOcclusion.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_AmbientOcclusion.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Paint006_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_AmbientOcclusion.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_AmbientOcclusion.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_AmbientOcclusion.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_AmbientOcclusion.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Color.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Color.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Color.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Color.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Rock023_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Color.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Color.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Color.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Color.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/Wood048_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Color.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Color.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Color.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Color.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor044_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_AmbientOcclusion.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_AmbientOcclusion.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_AmbientOcclusion.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_AmbientOcclusion.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Color.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Color.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Color.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Color.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_NormalGL.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_NormalGL.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_NormalGL.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_NormalGL.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Roughness.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Roughness.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Roughness.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/WoodFloor054_2K_Roughness.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/blurrynoise.tga b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/blurrynoise.tga similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/blurrynoise.tga rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/blurrynoise.tga diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/noisenormal.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/noisenormal.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/noisenormal.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/images/noisenormal.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/qmldir b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/qmldir similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/qmldir rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/qmldir diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/CMakeLists.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/CMakeLists.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/CMakeLists.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.frag b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.frag similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.frag rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.frag diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.vert b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.vert similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.vert rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/SSS.vert diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.frag b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.frag similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.frag rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.frag diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.vert b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.vert similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.vert rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple.vert diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.frag b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.frag similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.frag rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.frag diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.vert b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.vert similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.vert rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/carmat_simple_nf.vert diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.frag b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.frag similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.frag rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.frag diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.vert b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.vert similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.vert rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/glass.vert diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.frag b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.frag similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.frag rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.frag diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.vert b/tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.vert similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.vert rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/asset_imports/ComponentBundles/MaterialBundle/shaders/satin.vert diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/App.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/App.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/App.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/App.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/CMakeLists.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/CMakeLists.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/CMakeLists.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/CustomRoundButton.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/CustomRoundButton.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/CustomRoundButton.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/CustomRoundButton.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/MaterialNames.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/MaterialNames.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/MaterialNames.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/MaterialNames.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/MouseRotator.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/MouseRotator.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/MouseRotator.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/MouseRotator.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/Screen01.ui.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/Screen01.ui.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/Screen01.ui.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/Screen01.ui.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/fonts/OpenSans-Bold.ttf b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/fonts/OpenSans-Bold.ttf similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/fonts/OpenSans-Bold.ttf rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/fonts/OpenSans-Bold.ttf diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/fonts/OpenSans-Regular.ttf b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/fonts/OpenSans-Regular.ttf similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/fonts/OpenSans-Regular.ttf rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/fonts/OpenSans-Regular.ttf diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/fonts/fonts.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/fonts/fonts.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/fonts/fonts.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/fonts/fonts.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/Ground_ShadowMap.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/Ground_ShadowMap.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/Ground_ShadowMap.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/Ground_ShadowMap.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/HDR/dark_mode.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/HDR/dark_mode.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/HDR/dark_mode.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/HDR/dark_mode.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/HDR/day_mode.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/HDR/day_mode.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/HDR/day_mode.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/HDR/day_mode.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/LDR_RGB1_3.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/LDR_RGB1_3.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/LDR_RGB1_3.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/LDR_RGB1_3.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/QtLogo_HD.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/QtLogo_HD.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/QtLogo_HD.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/QtLogo_HD.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/innerMesh.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/innerMesh.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/innerMesh.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/innerMesh.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/lightToggle.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/lightToggle.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/lightToggle.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/lightToggle.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/outerMesh.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/outerMesh.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/outerMesh.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/outerMesh.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/perfhudicon.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/perfhudicon.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/perfhudicon.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/perfhudicon.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/perfhudicon_on.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/perfhudicon_on.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/UI/perfhudicon_on.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/UI/perfhudicon_on.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/White.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/White.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/White.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/White.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/checkmark.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/checkmark.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/checkmark.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/checkmark.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/groundAlpha.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/groundAlpha.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/groundAlpha.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/groundAlpha.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/qtlogo.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/qtlogo.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/qtlogo.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/qtlogo.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/scratchmap.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/scratchmap.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/scratchmap.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/scratchmap.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/shadow.png b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/shadow.png similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/shadow.png rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/shadow.png diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_AO.jpg b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_AO.jpg similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_AO.jpg rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_AO.jpg diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_Albedo.jpg b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_Albedo.jpg similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_Albedo.jpg rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_Albedo.jpg diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_Normal.jpg b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_Normal.jpg similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_Normal.jpg rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_Normal.jpg diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_Roughness.jpg b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_Roughness.jpg similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/images/vlkhcah_2K_Roughness.jpg rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/images/vlkhcah_2K_Roughness.jpg diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/meshes/floor.mesh b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/meshes/floor.mesh similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/meshes/floor.mesh rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/meshes/floor.mesh diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/meshes/materialBall.mesh b/tests/unit/unittest/qmlprojectmanager/data/file-filters/content/meshes/materialBall.mesh similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/content/meshes/materialBall.mesh rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/content/meshes/materialBall.mesh diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/filelist.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/filelist.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/filelist.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/filelist.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/CMakeLists.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/CMakeLists.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/CMakeLists.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/CMakeLists.txt b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/CMakeLists.txt similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/CMakeLists.txt rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/CMakeLists.txt diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/Constants.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/Constants.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/Constants.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/Constants.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/DirectoryFontLoader.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/DirectoryFontLoader.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/DirectoryFontLoader.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/DirectoryFontLoader.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/EventListModel.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/EventListModel.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/EventListModel.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/EventListModel.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/EventListSimulator.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/EventListSimulator.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/EventListSimulator.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/EventListSimulator.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/designer/plugin.metainfo b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/designer/plugin.metainfo similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/designer/plugin.metainfo rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/designer/plugin.metainfo diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/qmldir b/tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/qmldir similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/imports/MaterialLibrary/qmldir rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/imports/MaterialLibrary/qmldir diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/main.qml b/tests/unit/unittest/qmlprojectmanager/data/file-filters/main.qml similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/main.qml rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/main.qml diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/qmlcomponents b/tests/unit/unittest/qmlprojectmanager/data/file-filters/qmlcomponents similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/qmlcomponents rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/qmlcomponents diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/qmlmodules b/tests/unit/unittest/qmlprojectmanager/data/file-filters/qmlmodules similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/qmlmodules rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/qmlmodules diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/qtquickcontrols2.conf b/tests/unit/unittest/qmlprojectmanager/data/file-filters/qtquickcontrols2.conf similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/qtquickcontrols2.conf rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/qtquickcontrols2.conf diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/share.qrc b/tests/unit/unittest/qmlprojectmanager/data/file-filters/share.qrc similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/share.qrc rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/share.qrc diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/src/app_environment.h b/tests/unit/unittest/qmlprojectmanager/data/file-filters/src/app_environment.h similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/src/app_environment.h rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/src/app_environment.h diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/src/import_qml_plugins.h b/tests/unit/unittest/qmlprojectmanager/data/file-filters/src/import_qml_plugins.h similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/src/import_qml_plugins.h rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/src/import_qml_plugins.h diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/src/main.cpp b/tests/unit/unittest/qmlprojectmanager/data/file-filters/src/main.cpp similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/src/main.cpp rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/src/main.cpp diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/translations.db b/tests/unit/unittest/qmlprojectmanager/data/file-filters/translations.db similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/file-filters/translations.db rename to tests/unit/unittest/qmlprojectmanager/data/file-filters/translations.db diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/getter-setter/testfile-2.qmlproject b/tests/unit/unittest/qmlprojectmanager/data/getter-setter/empty.qmlproject similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/getter-setter/testfile-2.qmlproject rename to tests/unit/unittest/qmlprojectmanager/data/getter-setter/empty.qmlproject diff --git a/tests/auto/qml/qmlprojectmanager/projectitem/data/getter-setter/testfile-1.qmlproject b/tests/unit/unittest/qmlprojectmanager/data/getter-setter/notEmpty.qmlproject similarity index 100% rename from tests/auto/qml/qmlprojectmanager/projectitem/data/getter-setter/testfile-1.qmlproject rename to tests/unit/unittest/qmlprojectmanager/data/getter-setter/notEmpty.qmlproject diff --git a/tests/unit/unittest/qmlprojectmanager/projectitem-test.cpp b/tests/unit/unittest/qmlprojectmanager/projectitem-test.cpp new file mode 100644 index 00000000000..3bf214fd81f --- /dev/null +++ b/tests/unit/unittest/qmlprojectmanager/projectitem-test.cpp @@ -0,0 +1,539 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 + +#include "googletest.h" // IWYU pragma: keep +#include "google-using-declarations.h" + +#include + +#include +namespace { + +constexpr QLatin1String localTestDataDir{UNITTEST_DIR "/qmlprojectmanager/data"}; + +class QmlProjectItem : public testing::Test +{ +protected: + static void SetUpTestSuite() + { + projectItemEmpty = std::make_unique( + Utils::FilePath::fromString(localTestDataDir + "/getter-setter/empty.qmlproject"), true); + + projectItemNotEmpty = std::make_unique( + Utils::FilePath::fromString(localTestDataDir + "/getter-setter/notEmpty.qmlproject"), + true); + + projectItemFileFilters = std::make_unique( + Utils::FilePath::fromString(localTestDataDir + "/file-filters/MaterialBundle.qmlproject"), + true); + } + + static void TearDownTestSuite() + { + projectItemEmpty.reset(); + projectItemNotEmpty.reset(); + projectItemFileFilters.reset(); + } + +protected: + static inline std::unique_ptr projectItemEmpty; + static inline std::unique_ptr projectItemNotEmpty; + std::unique_ptr + projectItemSetters = std::make_unique( + Utils::FilePath::fromString(localTestDataDir + "/getter-setter/empty.qmlproject"), true); + static inline std::unique_ptr projectItemFileFilters; +}; + +auto createAbsoluteFilePaths(const QStringList &fileList) +{ + return Utils::transform(fileList, [](const QString &fileName) { + return Utils::FilePath::fromString(localTestDataDir + "/file-filters").pathAppended(fileName); + }); +} + +TEST_F(QmlProjectItem, GetNotEmptyMainFileProject) +{ + auto mainFile = projectItemNotEmpty->mainFile(); + + ASSERT_THAT(mainFile, Eq("content/App.qml")); +} + +TEST_F(QmlProjectItem, GetNotEmptyMainUIFileProject) +{ + auto mainUiFile = projectItemNotEmpty->mainUiFile(); + + ASSERT_THAT(mainUiFile, Eq("Screen01.ui.qml")); +} + +TEST_F(QmlProjectItem, GetNotEmptyMcuProject) +{ + auto isMcuProject = projectItemNotEmpty->isQt4McuProject(); + + ASSERT_TRUE(isMcuProject); +} + +TEST_F(QmlProjectItem, GetNotEmptyQtVersion) +{ + auto qtVersion = projectItemNotEmpty->versionQt(); + + ASSERT_THAT(qtVersion, Eq("6")); +} + +TEST_F(QmlProjectItem, GetNotEmptyQtQuickVersion) +{ + auto qtQuickVersion = projectItemNotEmpty->versionQtQuick(); + + ASSERT_THAT(qtQuickVersion, Eq("6.2")); +} + +TEST_F(QmlProjectItem, GetNotEmptyDesignStudioVersion) +{ + auto designStudioVersion = projectItemNotEmpty->versionDesignStudio(); + + ASSERT_THAT(designStudioVersion, Eq("3.9")); +} + +TEST_F(QmlProjectItem, GetNotEmptySourceDirectory) +{ + auto sourceDirectory = projectItemNotEmpty->sourceDirectory().path(); + + auto expectedSourceDir = localTestDataDir + "/getter-setter"; + + ASSERT_THAT(sourceDirectory, Eq(expectedSourceDir)); +} + +TEST_F(QmlProjectItem, GetNotEmptyTarGetNotEmptyDirectory) +{ + auto targetDirectory = projectItemNotEmpty->targetDirectory(); + + ASSERT_THAT(targetDirectory, Eq("/opt/targetDirectory")); +} + +TEST_F(QmlProjectItem, GetNotEmptyImportPaths) +{ + auto importPaths = projectItemNotEmpty->importPaths(); + + ASSERT_THAT(importPaths, UnorderedElementsAre("imports", "asset_imports")); +} + +TEST_F(QmlProjectItem, GetNotEmptyFileSelectors) +{ + auto fileSelectors = projectItemNotEmpty->fileSelectors(); + + ASSERT_THAT(fileSelectors, UnorderedElementsAre("WXGA", "darkTheme", "ShowIndicator")); +} + +TEST_F(QmlProjectItem, GetNotEmptyMultiLanguageSupport) +{ + auto multilanguageSupport = projectItemNotEmpty->multilanguageSupport(); + + ASSERT_TRUE(multilanguageSupport); +} + +TEST_F(QmlProjectItem, GetNotEmptySupportedLanguages) +{ + auto supportedLanguages = projectItemNotEmpty->supportedLanguages(); + + ASSERT_THAT(supportedLanguages, UnorderedElementsAre("en", "fr")); +} + +TEST_F(QmlProjectItem, GetNotEmptyPrimaryLanguage) +{ + auto primaryLanguage = projectItemNotEmpty->primaryLanguage(); + ; + + ASSERT_THAT(primaryLanguage, Eq("en")); +} + +TEST_F(QmlProjectItem, GetNotEmptyWidgetApp) +{ + auto widgetApp = projectItemNotEmpty->widgetApp(); + + ASSERT_TRUE(widgetApp); +} + +TEST_F(QmlProjectItem, GetNotEmptyFileList) +{ + QStringList fileList; + for (const auto &file : projectItemNotEmpty->files()) { + fileList.append(file.path()); + } + + auto expectedFileList = localTestDataDir + "/getter-setter/qtquickcontrols2.conf"; + + ASSERT_THAT(fileList, UnorderedElementsAre(expectedFileList)); +} + +TEST_F(QmlProjectItem, GetNotEmptyShaderToolArgs) +{ + auto shaderToolArgs = projectItemNotEmpty->shaderToolArgs(); + + ASSERT_THAT(shaderToolArgs, + UnorderedElementsAre("-s", "--glsl", "\"100 es,120,150\"", "--hlsl", "50", "--msl", "12")); +} + +TEST_F(QmlProjectItem, GetNotEmptyShaderToolFiles) +{ + auto shaderToolFiles = projectItemNotEmpty->shaderToolFiles(); + + ASSERT_THAT(shaderToolFiles, UnorderedElementsAre("content/shaders/*")); +} + +TEST_F(QmlProjectItem, GetNotEmptyEnvironment) +{ + auto env = projectItemNotEmpty->environment(); + + ASSERT_THAT(env, + UnorderedElementsAre( + Utils::EnvironmentItem("QT_QUICK_CONTROLS_CONF", "qtquickcontrols2.conf"))); +} + +TEST_F(QmlProjectItem, GetNotEmptyForceFreeType) +{ + auto forceFreeType = projectItemNotEmpty->forceFreeType(); + + ASSERT_TRUE(forceFreeType); +} + +TEST_F(QmlProjectItem, GetEmptyMainFileProject) +{ + auto mainFile = projectItemEmpty->mainFile(); + + ASSERT_THAT(mainFile, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyMainUIFileProject) +{ + auto mainUiFile = projectItemEmpty->mainUiFile(); + + ASSERT_THAT(mainUiFile, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyMcuProject) +{ + auto isMcuProject = projectItemEmpty->isQt4McuProject(); + + ASSERT_FALSE(isMcuProject); +} + +TEST_F(QmlProjectItem, GetEmptyQtVersion) +{ + auto qtVersion = projectItemEmpty->versionQt(); + + // default Qt Version is "5" for Design Studio projects + ASSERT_THAT(qtVersion, Eq("5")); +} + +TEST_F(QmlProjectItem, GetEmptyQtQuickVersion) +{ + auto qtQuickVersion = projectItemEmpty->versionQtQuick(); + + ASSERT_THAT(projectItemEmpty->versionQtQuick(), IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyDesignStudioVersion) +{ + auto designStudioVersion = projectItemEmpty->versionDesignStudio(); + + ASSERT_THAT(projectItemEmpty->versionDesignStudio(), IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptySourceDirectory) +{ + auto sourceDirectory = projectItemEmpty->sourceDirectory().path(); + + auto expectedSourceDir = localTestDataDir + "/getter-setter"; + + // default source directory is the project directory + ASSERT_THAT(sourceDirectory, Eq(expectedSourceDir)); +} + +TEST_F(QmlProjectItem, GetEmptyTarGetEmptyDirectory) +{ + auto targetDirectory = projectItemEmpty->targetDirectory(); + + ASSERT_THAT(targetDirectory, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyImportPaths) +{ + auto importPaths = projectItemEmpty->importPaths(); + + ASSERT_THAT(importPaths, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyFileSelectors) +{ + auto fileSelectors = projectItemEmpty->fileSelectors(); + + ASSERT_THAT(fileSelectors, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyMultiLanguageSupport) +{ + auto multilanguageSupport = projectItemEmpty->multilanguageSupport(); + + ASSERT_FALSE(multilanguageSupport); +} + +TEST_F(QmlProjectItem, GetEmptySupportedLanguages) +{ + auto supportedLanguages = projectItemEmpty->supportedLanguages(); + + ASSERT_THAT(supportedLanguages, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyPrimaryLanguage) +{ + auto primaryLanguage = projectItemEmpty->primaryLanguage(); + + ASSERT_THAT(primaryLanguage, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyWidgetApp) +{ + auto widgetApp = projectItemEmpty->widgetApp(); + + ASSERT_FALSE(widgetApp); +} + +TEST_F(QmlProjectItem, GetEmptyFileList) +{ + auto fileList = projectItemEmpty->files(); + + ASSERT_THAT(fileList, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyShaderToolArgs) +{ + auto shaderToolArgs = projectItemEmpty->shaderToolArgs(); + + ASSERT_THAT(shaderToolArgs, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyShaderToolFiles) +{ + auto shaderToolFiles = projectItemEmpty->shaderToolFiles(); + + ASSERT_THAT(shaderToolFiles, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyEnvironment) +{ + auto env = projectItemEmpty->environment(); + + ASSERT_THAT(env, IsEmpty()); +} + +TEST_F(QmlProjectItem, GetEmptyForceFreeType) +{ + auto forceFreeType = projectItemEmpty->forceFreeType(); + + ASSERT_FALSE(forceFreeType); +} + +TEST_F(QmlProjectItem, SetMainFileProject) +{ + projectItemSetters->setMainFile("testing"); + + auto mainFile = projectItemSetters->mainFile(); + + ASSERT_THAT(mainFile, Eq("testing")); +} + +TEST_F(QmlProjectItem, SetMainUIFileProject) +{ + projectItemSetters->setMainUiFile("testing"); + + auto mainUiFile = projectItemSetters->mainUiFile(); + + ASSERT_THAT(mainUiFile, Eq("testing")); +} + +TEST_F(QmlProjectItem, SetImportPaths) +{ + projectItemSetters->setImportPaths({"testing"}); + + auto importPaths = projectItemSetters->importPaths(); + + ASSERT_THAT(importPaths, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, AddImportPaths) +{ + projectItemSetters->setImportPaths({}); + projectItemSetters->addImportPath("testing"); + + auto importPaths = projectItemSetters->importPaths(); + + ASSERT_THAT(importPaths, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, SetFileSelectors) +{ + projectItemSetters->setFileSelectors({"testing"}); + + auto fileSelectors = projectItemSetters->fileSelectors(); + + ASSERT_THAT(fileSelectors, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, AddFileSelectors) +{ + projectItemSetters->setFileSelectors({}); + projectItemSetters->addFileSelector("testing"); + + auto fileSelectors = projectItemSetters->fileSelectors(); + + ASSERT_THAT(fileSelectors, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, SetMultiLanguageSupport) +{ + projectItemSetters->setMultilanguageSupport(true); + + auto multilanguageSupport = projectItemSetters->multilanguageSupport(); + + ASSERT_TRUE(multilanguageSupport); +} + +TEST_F(QmlProjectItem, SetSupportedLanguages) +{ + projectItemSetters->setSupportedLanguages({"testing"}); + + auto supportedLanguages = projectItemSetters->supportedLanguages(); + + ASSERT_THAT(supportedLanguages, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, AddSupportedLanguages) +{ + projectItemSetters->setSupportedLanguages({}); + projectItemSetters->addSupportedLanguage("testing"); + + auto supportedLanguages = projectItemSetters->supportedLanguages(); + + ASSERT_THAT(supportedLanguages, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, SetPrimaryLanguage) +{ + projectItemSetters->setPrimaryLanguage("testing"); + + auto primaryLanguage = projectItemSetters->primaryLanguage(); + ; + + ASSERT_THAT(primaryLanguage, Eq("testing")); +} + +TEST_F(QmlProjectItem, SetWidgetApp) +{ + projectItemSetters->setWidgetApp(true); + + auto widgetApp = projectItemSetters->widgetApp(); + + ASSERT_TRUE(widgetApp); +} + +TEST_F(QmlProjectItem, SetShaderToolArgs) +{ + projectItemSetters->setShaderToolArgs({"testing"}); + + auto shaderToolArgs = projectItemSetters->shaderToolArgs(); + + ASSERT_THAT(shaderToolArgs, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, AddShaderToolArgs) +{ + projectItemSetters->setShaderToolArgs({}); + projectItemSetters->addShaderToolArg("testing"); + + auto shaderToolArgs = projectItemSetters->shaderToolArgs(); + + ASSERT_THAT(shaderToolArgs, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, SetShaderToolFiles) +{ + projectItemSetters->setShaderToolFiles({"testing"}); + + auto shaderToolFiles = projectItemSetters->shaderToolFiles(); + + ASSERT_THAT(shaderToolFiles, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, AddShaderToolFiles) +{ + projectItemSetters->setShaderToolFiles({}); + projectItemSetters->addShaderToolFile("testing"); + + auto shaderToolFiles = projectItemSetters->shaderToolFiles(); + + ASSERT_THAT(shaderToolFiles, UnorderedElementsAre("testing")); +} + +TEST_F(QmlProjectItem, AddEnvironment) +{ + projectItemSetters->addToEnviroment("testing", "testing"); + auto envs = projectItemSetters->environment(); + + Utils::EnvironmentItems expectedEnvs; + expectedEnvs.push_back({"testing", "testing"}); + + ASSERT_EQ(envs, expectedEnvs); +} + +TEST_F(QmlProjectItem, SetForceFreeTypeTrue) +{ + projectItemSetters->setForceFreeType(true); + + ASSERT_EQ(projectItemSetters->forceFreeType(), true); +} + +TEST_F(QmlProjectItem, SetForceFreeTypeFalse) +{ + projectItemSetters->setForceFreeType(false); + + ASSERT_EQ(projectItemSetters->forceFreeType(), false); +} + +TEST_F(QmlProjectItem, SetQtVersion) +{ + projectItemSetters->setVersionQt("6"); + + ASSERT_EQ(projectItemSetters->versionQt().toStdString(), "6"); +} + +TEST_F(QmlProjectItem, SetQtQuickVersion) +{ + projectItemSetters->setVersionQtQuick("6"); + + ASSERT_EQ(projectItemSetters->versionQtQuick(), "6"); +} + +TEST_F(QmlProjectItem, SetDesignStudioVersion) +{ + projectItemSetters->setVersionDesignStudio("6"); + + ASSERT_EQ(projectItemSetters->versionDesignStudio(), "6"); +} + +// TODO: We should move this one into the integration tests +TEST_F(QmlProjectItem, TestFileFilters) +{ + // GIVEN + auto fileListPath = Utils::FilePath::fromString(localTestDataDir + "/file-filters/filelist.txt"); + QStringList fileNameList = QString::fromUtf8(fileListPath.fileContents().value()) + .replace("\r\n", "\n") + .split("\n"); + auto expectedAbsoluteFilePaths = createAbsoluteFilePaths(fileNameList); + + // WHEN + auto filePaths = projectItemFileFilters->files(); + + // THEN + ASSERT_THAT(filePaths, UnorderedElementsAreArray(expectedAbsoluteFilePaths)); +} + +} // namespace