diff --git a/autotests/data/testpackage/metadata.desktop b/autotests/data/testpackage/metadata.desktop index 78d97c8..68ed046 100644 --- a/autotests/data/testpackage/metadata.desktop +++ b/autotests/data/testpackage/metadata.desktop @@ -1,59 +1,60 @@ [Desktop Entry] Encoding=UTF-8 Keywords= Name=Test Package Name[ar]=حزمة اختبارية Name[ast]=Paquete de prueba Name[bs]=Testni paket Name[ca]=Paquet de proves Name[ca@valencia]=Paquet de proves Name[cs]=Testovací balíček Name[da]=Testpakke Name[de]=Test-Paket Name[el]=Πακέτο δοκιμής Name[en_GB]=Test Package Name[es]=Probar el paquete Name[fi]=Testipaketti Name[fr]=Paquet de test Name[gd]=Pacaid dheuchainneach Name[gl]=Paquete de probas Name[hu]=Tesztcsomag Name[ia]=Pacchetto de prova Name[it]=Pacchetto di prova Name[ko]=테스트 패키지 Name[mr]=चाचणी पॅकेज Name[nb]=Test pakke Name[nds]=Testpaket Name[nl]=Testpakket Name[nn]=Test pakke Name[pa]=ਟੈਸਟ ਪੈਕੇਜ Name[pl]=Pakiet próbny Name[pt]=Pacote de Teste Name[pt_BR]=Pacote de teste Name[ro]=Pachet de test Name[ru]=Тестовый пакет Name[sk]=Testovací balík Name[sl]=Preizkusni paket Name[sr]=Пробни пакет Name[sr@ijekavian]=Пробни пакет Name[sr@ijekavianlatin]=Probni paket Name[sr@latin]=Probni paket Name[sv]=Testpaket Name[tr]=Paketi Denetle Name[uk]=Тестовий пакунок Name[x-test]=xxTest Packagexx Name[zh_CN]=测试包 Name[zh_TW]=測試套件 +Comment=fancy shmancy summary Type=Service X-KDE-ServiceTypes=KPackage/Generic X-KDE-ParentApp= X-KDE-PluginInfo-Author=Joe Blow X-KDE-PluginInfo-Category= X-KDE-PluginInfo-Email=jblow@kde.org X-KDE-PluginInfo-License=GPLv2+ X-KDE-PluginInfo-Name=org.kde.testpackage X-KDE-PluginInfo-Version= X-KDE-PluginInfo-Website= X-Plasma-MainScript=ui/main.qml Icon=plasma diff --git a/autotests/data/testpackage/testpackage.testappdataxml b/autotests/data/testpackage/testpackage.testappdataxml index a449443..1e2b752 100644 --- a/autotests/data/testpackage/testpackage.testappdataxml +++ b/autotests/data/testpackage/testpackage.testappdataxml @@ -1,51 +1,52 @@ org.kde.testpackage Test Package حزمة اختبارية Paquete de prueba Testni paket Paquet de proves Paquet de proves Testovací balíček Testpakke Test-Paket Πακέτο δοκιμής Test Package Probar el paquete Testipaketti Paquet de test Pacaid dheuchainneach Paquete de probas Tesztcsomag Pacchetto de prova Pacchetto di prova 테스트 패키지 चाचणी पॅकेज Test pakke Testpaket Testpakket Test pakke ਟੈਸਟ ਪੈਕੇਜ Pakiet próbny Pacote de Teste Pacote de teste Pachet de test Тестовый пакет Testovací balík Preizkusni paket Пробни пакет Probni paket Probni paket Пробни пакет Testpaket Paketi Denetle Тестовий пакунок xxTest Packagexx 测试包 測試套件 + fancy shmancy summary Joe Blow <jblow@kde.org> plasma GPL-2.0+ CC0-1.0 diff --git a/autotests/kpackagetoolappstreamtest.cmake b/autotests/kpackagetoolappstreamtest.cmake index 1923f80..f52a736 100644 --- a/autotests/kpackagetoolappstreamtest.cmake +++ b/autotests/kpackagetoolappstreamtest.cmake @@ -1,9 +1,27 @@ execute_process(COMMAND ${kpackagetool} --appstream-metainfo . WORKING_DIRECTORY ${input} OUTPUT_FILE "${generated}" ERROR_VARIABLE error) if (error) message(FATAL_ERROR "couldn't generate metadata: ${error}") endif() execute_process(COMMAND cmake -E compare_files ${output} ${generated} ERROR_VARIABLE error_compare) if (error_compare) message(FATAL_ERROR "error on compare: ${error_compare}") endif() + +# Make sure the standard test passes appstream validation. +get_filename_component(generated_name ${generated} NAME) +if(${generated_name} STREQUAL "testpackage.appdata.xml") + find_program(APPSTREAMCLI appstreamcli) + if(APPSTREAMCLI) + execute_process(COMMAND ${APPSTREAMCLI} validate ${generated} + ERROR_VARIABLE appstream_stderr + OUTPUT_VARIABLE appstream_stdout + RESULT_VARIABLE result + ) + if(NOT result EQUAL 0) + message(FATAL_ERROR "appstream data seems to be imperfect: ${appstream_stderr} ${appstream_stdout}") + endif() + else() + message(WARNING "skipping appstream validation as no appstreamcli binary was found") + endif() +endif()