diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/CMakeLists.txt | 9 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/CMakeLists.txt | 12 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/check.cmake.in | 37 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/CMakeLists.txt | 10 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/Messages.sh | 2 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/README | 32 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/images/pairs.svgz | bin | 0 -> 103064 bytes | |||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/ui/main.qml | 28 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/metadata.desktop | 67 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.kdevtemplate | 74 | ||||
-rw-r--r-- | tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.png | bin | 0 -> 35613 bytes |
11 files changed, 271 insertions, 0 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 1a66f563..afb825cc 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -130,6 +130,15 @@ add_test_macro(ECMInstallIconsTest ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_BINARY_DIR}/ECMInstallIconsTest/check_tree.cmake" ) +set(KDEPackageAppTemplatesTest_EXTRA_OPTIONS + --build-target install + --build-options + "-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_CURRENT_BINARY_DIR}/KDEPackageAppTemplatesTest/InstallDirectory" +) +add_test_macro(KDEPackageAppTemplatesTest + ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_BINARY_DIR}/KDEPackageAppTemplatesTest/check.cmake" +) + if (Qt5Core_FOUND AND Qt5LinguistTools_FOUND) set(ECMPoQmToolsTest_EXTRA_OPTIONS --build-target install diff --git a/tests/KDEPackageAppTemplatesTest/CMakeLists.txt b/tests/KDEPackageAppTemplatesTest/CMakeLists.txt new file mode 100644 index 00000000..1e5e369a --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/CMakeLists.txt @@ -0,0 +1,12 @@ +cmake_minimum_required(VERSION 3.0) +set(ECM_KDE_MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../kde-modules) +set(ECM_MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../modules) +set(CMAKE_MODULE_PATH "${ECM_KDE_MODULE_DIR}") + +include(KDEPackageAppTemplates) + +message(STATUS "Test: generate compressed template") +kde_package_app_templates(TEMPLATES "qml-plasmoid" INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}) + +# this will be run by CTest +configure_file(check.cmake.in "${CMAKE_CURRENT_BINARY_DIR}/check.cmake" @ONLY) diff --git a/tests/KDEPackageAppTemplatesTest/check.cmake.in b/tests/KDEPackageAppTemplatesTest/check.cmake.in new file mode 100644 index 00000000..2a4ed1e7 --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/check.cmake.in @@ -0,0 +1,37 @@ +set(CMAKE_MODULE_PATH "@MODULES_DIR@/../kde-modules") +set(CMAKE_CURRENT_SOURCE_DIR "@CMAKE_CURRENT_SOURCE_DIR@") +set(CMAKE_CURRENT_BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@") + + +########################################################### + +macro(check_exists file) + message(STATUS "Checking for ${file}") + if (NOT EXISTS ${file}) + message(FATAL_ERROR "File \"${file}\" does not exist") + endif() +endmacro() + +message(STATUS "Test: the packaged template has been generated") +check_exists(${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid.tar.bz2 ) + +message(STATUS "Extracting the packaged template") +file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid) +execute_process(COMMAND ${CMAKE_COMMAND} -E tar "xvfj" ${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid.tar.bz2 + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid + RESULT_VARIABLE result + ERROR_VARIABLE error + ) + +if(NOT result EQUAL 0) + message(FATAL_ERROR "Error extracting the template: ${error}") +endif() + +message(STATUS "Test: the packaged template has been correctly extracted") +check_exists(${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid/qml-plasmoid.png ) +check_exists(${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid/qml-plasmoid.kdevtemplate ) +check_exists(${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid/package/metadata.desktop ) + +message(STATUS "Cleaning up generated files") +file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid.tar.bz2 ) +file(REMOVE_RECURSE ${CMAKE_CURRENT_BINARY_DIR}/qml-plasmoid ) diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/CMakeLists.txt b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/CMakeLists.txt new file mode 100644 index 00000000..d9cbb7fe --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/CMakeLists.txt @@ -0,0 +1,10 @@ +cmake_minimum_required(VERSION 2.8.12) + +project(plasma-%{APPNAMELC}) + +find_package(ECM 1.4.0 REQUIRED NO_MODULE) +set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) + +find_package(KF5Plasma REQUIRED) + +plasma_install_package(package org.kde.%{APPNAMELC}) diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/Messages.sh b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/Messages.sh new file mode 100644 index 00000000..b8af9a77 --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/Messages.sh @@ -0,0 +1,2 @@ +#! /usr/bin/env bash +$XGETTEXT `find . -name \*.qml` -o $podir/plasma_applet_%{APPNAMELC}.pot
\ No newline at end of file diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/README b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/README new file mode 100644 index 00000000..6814263d --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/README @@ -0,0 +1,32 @@ +Plasma Applet Template +---------------------- + +-- Build instructions -- + +cd /where/your/applet/is/generated +mkdir build +cd build +cmake -DCMAKE_INSTALL_PREFIX=MYPREFIX .. +make +make install + +(MYPREFIX is where you install your Plasma setup, replace it accordingly) + +Restart plasma to load the applet +(in a terminal type: +kquitapp plasmashell +and then +plasmashell) + +or view it with +plasmoidviewer -a YourAppletName + +-- Tutorials and resources -- +The explanation of the template +http://techbase.kde.org/index.php?title=Development/Tutorials/Plasma/GettingStarted + +Plasma techbase pages +http://techbase.kde.org/Projects/Plasma + +Plasma QML API explained +http://techbase.kde.org/Development/Tutorials/Plasma/QML/API diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/images/pairs.svgz b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/images/pairs.svgz Binary files differnew file mode 100644 index 00000000..4d1be5de --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/images/pairs.svgz diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/ui/main.qml b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/ui/main.qml new file mode 100644 index 00000000..afa4758a --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/contents/ui/main.qml @@ -0,0 +1,28 @@ +/*************************************************************************** + * Copyright (C) %{CURRENT_YEAR} by %{AUTHOR} <%{EMAIL}> * + * * + * Distributed under the OSI-approved BSD License (the "License"); + * see accompanying file COPYING-CMAKE-SCRIPTS for details. + * + * This software is distributed WITHOUT ANY WARRANTY; without even the + * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the License for more information. + ***************************************************************************/ + +import QtQuick 2.1 +import QtQuick.Layouts 1.1 +import org.kde.plasma.core 2.0 as PlasmaCore +import org.kde.plasma.plasmoid 2.0 +import org.kde.plasma.components 2.0 as PlasmaComponents + +Item { + Plasmoid.fullRepresentation: ColumnLayout { + anchors.fill: parent + PlasmaCore.IconItem { + source: "kde" + } + PlasmaComponents.Label { + text: "This is Plasma!" + } + } +} diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/metadata.desktop b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/metadata.desktop new file mode 100644 index 00000000..5fcd677c --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/package/metadata.desktop @@ -0,0 +1,67 @@ +[Desktop Entry] +Name=%{APPNAME} +Name[ca]=%{APPNAME} +Name[ca@valencia]=%{APPNAME} +Name[da]=%{APPNAME} +Name[en_GB]=%{APPNAME} +Name[es]=%{APPNAME} +Name[fi]=%{APPNAME} +Name[gl]=%{APPNAME} +Name[it]=%{APPNAME} +Name[nb]=%{APPNAME} +Name[nl]=%{APPNAME} +Name[nn]=%{APPNAME} +Name[pl]=%{APPNAME} +Name[pt]=%{APPNAME} +Name[pt_BR]=%{APPNAME} +Name[sl]=%{APPNAME} +Name[sr]=%{APPNAME} +Name[sr@ijekavian]=%{APPNAME} +Name[sr@ijekavianlatin]=%{APPNAME} +Name[sr@latin]=%{APPNAME} +Name[sv]=%{APPNAME} +Name[uk]=%{APPNAME} +Name[x-test]=xx%{APPNAME}xx +Comment=what your app does in a few words +Comment[ca]=Què fa aquesta aplicació en poques paraules +Comment[ca@valencia]=Què fa esta aplicació en poques paraules +Comment[da]=nogle få ord om hvad din app gør +Comment[en_GB]=what your app does in a few words +Comment[es]=lo que hace su aplicación, en pocas palabras +Comment[fi]=ohjelmasi toiminta muutamalla sanalla +Comment[gl]=o que fai o seu programa en poucas palabras +Comment[it]=Cosa fa la tua applicazione in poche parole +Comment[nb]=hva programmet gjør, med noen få ord +Comment[nl]=wat uw app doet in een paar woorden +Comment[pl]=w kilku słowach opis co robi twój program +Comment[pt]=o que faz a sua aplicação, em poucas palavras +Comment[pt_BR]=breve descrição do que o seu aplicativo faz +Comment[sl]=kaj vaš program dela, v nekaj besedah +Comment[sr]=Укратко о томе шта ваш програм ради +Comment[sr@ijekavian]=Укратко о томе шта ваш програм ради +Comment[sr@ijekavianlatin]=Ukratko o tome šta vaš program radi +Comment[sr@latin]=Ukratko o tome šta vaš program radi +Comment[sv]=vad programmet gör med några få ord +Comment[uk]=призначення вашої програми у декількох словах +Comment[x-test]=xxwhat your app does in a few wordsxx + +Icon=applications-system +Type=Service +ServiceTypes=Plasma/Applet + +X-KDE-PluginInfo-Author=%{AUTHOR} +X-KDE-PluginInfo-Email=%{EMAIL} +X-KDE-PluginInfo-Name=%{APPNAMELC} +X-KDE-PluginInfo-Version=1.0 +X-KDE-PluginInfo-Website=http://plasma.kde.org/ +X-KDE-PluginInfo-Category=Utilities +X-KDE-PluginInfo-Depends= +X-KDE-PluginInfo-License=GPL +X-KDE-PluginInfo-EnabledByDefault=true +X-KDE-PluginInfo-Name=org.kde.%{APPNAMELC} + +X-Plasma-API=declarativeappletscript +X-Plasma-MainScript=ui/main.qml +X-Plasma-Requires-FileDialog=Unused +X-Plasma-Requires-LaunchApp=Unused +X-Plasma-DefaultSize=200,300 diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.kdevtemplate b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.kdevtemplate new file mode 100644 index 00000000..2675e711 --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.kdevtemplate @@ -0,0 +1,74 @@ +# KDE Config File +[General] +Name=Plasma QML Applet +Name[bs]=Plasma QML Applet +Name[ca]=Miniaplicació en QML pel Plasma +Name[ca@valencia]=Miniaplicació en QML pel Plasma +Name[cs]=Aplet QML Plasma +Name[da]=Plasma QML-applet +Name[de]=Plasma-QML-Miniprogramm +Name[el]=Μικροεφαρμογή Plasma QML +Name[en_GB]=Plasma QML Applet +Name[es]=Miniaplicación QML para Plasma +Name[et]=Plasma QML aplett +Name[fi]=Plasma QML-sovelma +Name[fr]=Composant graphique QML pour Plasma +Name[gl]=Applet QML para Plasma +Name[hu]=Plasma QML kisalkalmazás +Name[it]=Applet di Plasma in QML +Name[kk]=Plasma QML апплеті +Name[ko]=Plasma QML 애플릿 +Name[nb]=Plasma QML-miniprogram +Name[nl]=Plasma QML-applet +Name[pl]=Aplet plazmy QML Applet +Name[pt]='Applet' do Plasma em QML +Name[pt_BR]=Miniaplicativo Plasma em QML +Name[ru]=Аплет Plasma QML +Name[sk]=Plasma QML Applet +Name[sl]=Aplet QML za Plasmo +Name[sr]=Плазма КуМЛ аплет +Name[sr@ijekavian]=Плазма КуМЛ аплет +Name[sr@ijekavianlatin]=Plasma QML aplet +Name[sr@latin]=Plasma QML aplet +Name[sv]=Plasma QML-miniprogram +Name[tr]=Plasma QML Programcığı +Name[uk]=Аплет Плазми мовою QML +Name[x-test]=xxPlasma QML Appletxx +Name[zh_CN]=Plasma QML 小程序 +Name[zh_TW]=Plasma QML 小程式 +Comment=Plasma QML Applet Template: a plasma applet template displaying a svg picture and a text. +Comment[bs]=Predložak za QML aplete. Predložak za plasma aplete koji prikazuju SVG sliku i tekst. +Comment[ca]=Plantilla de miniaplicació pel Plasma: una plantilla de miniaplicació del plasma que mostra una icona i un text. +Comment[ca@valencia]=Plantilla de miniaplicació pel Plasma: una plantilla de miniaplicació del plasma que mostra una icona i un text. +Comment[da]=Skabelon til Plasma QML-applet. En skabelon til en Plasma-applet, som viser et SVG-billede og en tekst. +Comment[de]=Vorlage für Plasma-QML-Miniprogramm. Eine Vorlage für ein Plasma-Miniprogramm, das ein SVG-Symbol und einen Text anzeigt +Comment[el]=Πρότυπο μικροεφαρμογής Plasma QML: ένα πρότυπο μικροεφαρμογής plasma που εμφανίζει μια εικόνα svg και ένα κείμενο. +Comment[en_GB]=Plasma QML Applet Template: a plasma applet template displaying a svg picture and a text. +Comment[es]=Plantilla de miniaplicación QML para Plasma: una plantilla de miniaplicación para Plasma que muestra una imagen SVG y un texto. +Comment[et]=Plasma QML apleti mall. Plasma apleti mall, näitab SVG-pilti ja teksti +Comment[fi]=Plasman QML-sovelmamalli: Plasma-sovelmamalli, joka näyttää kuvakkeen ja tekstiä. +Comment[fr]=Modèle de composant graphique QML pour Plasma. Un modèle de composant graphique pour Plasma affichant une image « svg » et un texte. +Comment[gl]=Modelo de applet para Plasma: un modelo de applet para Plasma que mostra unha imaxe SVG e un texto. +Comment[hu]=Plasma QML kisalkalmazás sablon: egy Plasma kisalkalmazás sablon, amely megjelenít egy SVG képet és egy szöveget. +Comment[it]=Modello di applet Plasma in QML. Un modello di programmino Plasma che visualizza un'immagine SVG e del testo +Comment[kk]=Plasma QML апплет үлгісі. SVG-суреті мен мәтінді көрсететін Plasma апплет үлгісі. +Comment[ko]=Plasma QML 애플릿 템플릿. SVG 그림과 텍스트를 표시하는 Plasma 애플릿 템플릿 +Comment[nb]=Plasma mal for QML miniprogram: en mal for et Plasma-element som viser et svg-bilde og en tekst. +Comment[nl]=Sjabloon voor Plasma-QML-applet: Een sjabloon voor een plasma-applet dat een svg-afbeelding en een tekst toont +Comment[pl]=Szablon apletu Plazmy QML: szablon apletu plazmy wyświetlający zdjęcie svg i tekst. +Comment[pt]=Modelo de 'Applet' do Plasma. Um modelo de 'applet' do Plasma que mostra uma imagem SVG e algum texto. +Comment[pt_BR]=Modelo de miniaplicativo Plasma em QML: Um modelo de miniaplicativo Plasma que mostra uma imagem SVG e texto. +Comment[ru]=Пример виджета Plasma на QML. Шаблон виджета Plasma, показывающий изображение SVG и текст. +Comment[sk]=Šablóna appletu Plasma QML: šablóna plasma appletu zobrazujúca svg obrázok a text. +Comment[sl]=Predloga apleta Plasma, ki prikazuje sliko svg in besedilo. +Comment[sr]=Шаблон за плазма КуМЛ аплет који даје СВГ слику и текст +Comment[sr@ijekavian]=Шаблон за плазма КуМЛ аплет који даје СВГ слику и текст +Comment[sr@ijekavianlatin]=Šablon za plasma QML aplet koji daje SVG sliku i tekst +Comment[sr@latin]=Šablon za plasma QML aplet koji daje SVG sliku i tekst +Comment[sv]=Mall för Plasma QML-miniprogram. En mall för ett Plasma-miniprogram som visar en SVG-bild och en text. +Comment[tr]=Plasma QML Programcığı Şablonu: Bir metin ve svg resmi gösteren plasma programcığı şablonu +Comment[uk]=Шаблон аплету Плазми. Шаблон аплету Плазми, який показу зображення SVG і текст. +Comment[x-test]=xxPlasma QML Applet Template: a plasma applet template displaying a svg picture and a text.xx +Comment[zh_TW]=Plasma QML 小程式樣本:用於顯示 svg 圖片與文字的 plasma 小程式樣本 +Category=KDE/Plasmoid +Icon=qml-plasmoid.png diff --git a/tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.png b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.png Binary files differnew file mode 100644 index 00000000..26748f6c --- /dev/null +++ b/tests/KDEPackageAppTemplatesTest/qml-plasmoid/qml-plasmoid.png |