summaryrefslogtreecommitdiff
path: root/lang/python/python-platformdirs/test.sh
diff options
context:
space:
mode:
authorJeffery To <jeffery.to@gmail.com>2023-12-04 14:05:55 +0800
committerTianling Shen <cnsztl@gmail.com>2023-12-07 15:07:05 +0800
commit5e1b12e55e10bd2cef54d67d4bcb8ae555e7a409 (patch)
tree44f3571a9f787b4aae8a9dc64cc889678c559374 /lang/python/python-platformdirs/test.sh
parenta2c057312f65ea3afdd5cd22463fde6da3812d8c (diff)
python-platformdirs: Add new package
This also includes a test.sh script for the packages feed CI. From the README: When writing desktop application, finding the right location to store user data and configuration varies per platform. Even for single-platform apps, there may by plenty of nuances in figuring out the right location. This kind of thing is what the platformdirs package is for. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
Diffstat (limited to 'lang/python/python-platformdirs/test.sh')
-rw-r--r--lang/python/python-platformdirs/test.sh33
1 files changed, 33 insertions, 0 deletions
diff --git a/lang/python/python-platformdirs/test.sh b/lang/python/python-platformdirs/test.sh
new file mode 100644
index 000000000..40dabb2fb
--- /dev/null
+++ b/lang/python/python-platformdirs/test.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+[ "$1" = python3-platformdirs ] || exit 0
+
+python3 - << 'EOF'
+
+from platformdirs import *
+appname = "SuperApp"
+appauthor = "Acme"
+
+assert user_data_dir(appname, appauthor) == '/root/.local/share/SuperApp'
+assert user_cache_dir(appname, appauthor) == '/root/.cache/SuperApp'
+assert user_log_dir(appname, appauthor) == '/root/.local/state/SuperApp/log'
+assert user_config_dir(appname) == '/root/.config/SuperApp'
+assert user_documents_dir() == '/root/Documents'
+assert user_downloads_dir() == '/root/Downloads'
+assert user_pictures_dir() == '/root/Pictures'
+assert user_videos_dir() == '/root/Videos'
+assert user_music_dir() == '/root/Music'
+assert user_desktop_dir() == '/root/Desktop'
+assert user_runtime_dir(appname, appauthor) == '/run/user/0/SuperApp'
+
+assert site_data_dir(appname, appauthor) == '/usr/local/share/SuperApp'
+assert site_data_dir(appname, appauthor, multipath=True) == '/usr/local/share/SuperApp:/usr/share/SuperApp'
+
+assert site_config_dir(appname) == '/etc/xdg/SuperApp'
+
+import os
+os.environ["XDG_CONFIG_DIRS"] = "/etc:/usr/local/etc"
+
+assert site_config_dir(appname, multipath=True) == '/etc/SuperApp:/usr/local/etc/SuperApp'
+
+EOF