1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-07-02 07:20:37 +02:00

Merge branch 'v2_video' into 'master'

v2: move video to translated text (Closes: #1095)

Closes #1095

See merge request fdroid/fdroidserver!1293
This commit is contained in:
Hans-Christoph Steiner 2023-02-16 20:59:51 +00:00
commit 92556e4cd0
2 changed files with 37 additions and 1 deletions

View File

@ -541,7 +541,6 @@ def package_metadata(app, repodir):
"SourceCode",
"Translation",
"WebSite",
"video",
"featureGraphic",
"promoGraphic",
"tvBanner",
@ -564,6 +563,7 @@ def package_metadata(app, repodir):
"Name",
"Summary",
"Description",
"video",
):
element_new = element[:1].lower() + element[1:]
if element in app and app[element]:

View File

@ -23,6 +23,7 @@ if localmodule not in sys.path:
import fdroidserver.common
import fdroidserver.index
import fdroidserver.metadata
import fdroidserver.net
import fdroidserver.signindex
import fdroidserver.publish
@ -51,6 +52,7 @@ class IndexTest(unittest.TestCase):
config['jarsigner'] = fdroidserver.common.find_sdk_tools_cmd('jarsigner')
fdroidserver.common.config = config
fdroidserver.signindex.config = config
fdroidserver.update.config = config
if not os.path.exists('repo/index-v1.jar'):
fdroidserver.signindex.sign_index(
@ -509,6 +511,40 @@ class IndexTest(unittest.TestCase):
i, fdroidserver.common.load_stats_fdroid_signing_key_fingerprints()
)
def test_package_metadata(self):
"""A smoke check and format check of index.package_metadata()"""
def _kn(key):
return key[0].lower() + key[1:]
apps = fdroidserver.metadata.read_metadata()
fdroidserver.update.insert_localized_app_metadata(apps)
# smoke check all metadata files
for appid, app in apps.items():
metadata = fdroidserver.index.package_metadata(app, 'repo')
for k in ('Description', 'Name', 'Summary', 'video'):
if app.get(k):
self.assertTrue(isinstance(metadata[_kn(k)], dict))
for k in ('AuthorWebSite', 'IssueTracker', 'Translation', 'WebSite'):
if app.get(k):
self.assertTrue(isinstance(metadata[_kn(k)], str))
# make sure these known values were properly parsed and included
appid = 'info.guardianproject.urzip'
app = apps[appid]
metadata = fdroidserver.index.package_metadata(app, 'repo')
# files
self.assertEqual(36027, metadata['featureGraphic']['en-US']['size'])
self.assertEqual(1413, metadata['icon']['en-US']['size'])
# localized strings
self.assertEqual({'en-US': 'title'}, metadata['name'])
self.assertEqual({'en-US': 'video'}, metadata['video'])
# strings
self.assertEqual(
'https://dev.guardianproject.info/projects/urzip',
metadata['webSite'],
)
if __name__ == "__main__":
os.chdir(os.path.dirname(__file__))