summaryrefslogtreecommitdiffstats
path: root/menu/tests/tests
diff options
context:
space:
mode:
authorWaldo Bastian <waldo.bastian@intel.com>2005-04-21 09:15:31 +0000
committerWaldo Bastian <waldo.bastian@intel.com>2005-04-21 09:15:31 +0000
commitbb600038d866852ff90f0124ba2fe6526b71585d (patch)
tree2c3350fb4930171b07c6ce09a4a33a02de3e05f1 /menu/tests/tests
parent5128e55ac6d14a2bc4a8b1522c03782cddbe734d (diff)
downloadxdg-specs-bb600038d866852ff90f0124ba2fe6526b71585d.tar.xz
test s: Test that .desktop files under $HOME correctly
override .desktop files at system level test t: Test order in which <Move> elements are processed
Diffstat (limited to 'menu/tests/tests')
-rw-r--r--menu/tests/tests/s/result3
-rw-r--r--menu/tests/tests/s/test51
-rw-r--r--menu/tests/tests/t/result3
-rw-r--r--menu/tests/tests/t/test47
4 files changed, 104 insertions, 0 deletions
diff --git a/menu/tests/tests/s/result b/menu/tests/tests/s/result
new file mode 100644
index 0000000..664105a
--- /dev/null
+++ b/menu/tests/tests/s/result
@@ -0,0 +1,3 @@
+Development/ kde-gideon.desktop /tmp/menutestdir/xdg_data_home/applications/kde-gideon.desktop
+Development/ mahjongg.desktop /tmp/menutestdir/xdg_data_home/applications/mahjongg.desktop
+Games/ freecell.desktop /tmp/menutestdir/xdg_data_home/applications/freecell.desktop
diff --git a/menu/tests/tests/s/test b/menu/tests/tests/s/test
new file mode 100644
index 0000000..f332434
--- /dev/null
+++ b/menu/tests/tests/s/test
@@ -0,0 +1,51 @@
+echo ">>> .desktop files with same name ..."
+
+# Tests the type attribute in <MergeFile>
+
+# Generate applications.menu
+mkdir -p ${XDG_CONFIG_DIR}/menus
+./expand > ${XDG_CONFIG_DIR}/menus/applications.menu <<EOF
+ <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
+ "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
+
+<Menu>
+ <Name>KDE</Name>
+ <DefaultAppDirs/>
+ <Menu>
+ <Name>Games</Name>
+ <Include>
+ <Category>Game</Category>
+ </Include>
+ </Menu>
+ <Menu>
+ <Name>Development</Name>
+ <Include>
+ <Category>Development</Category>
+ </Include>
+ </Menu>
+</Menu>
+EOF
+
+# Install .desktop files
+installData ${XDG_DATA_DIR}/applications freecell.desktop glines.desktop mahjongg.desktop
+
+# freecell.desktop is installed twice, only the version under ${XDG_DATA_HOME}/applications
+# should show up in the menu
+# freecell.desktop in ${XDG_DATA_DIR}/applications should be ignored.
+installData ${XDG_DATA_HOME}/applications freecell.desktop
+
+# ${XDG_DATA_HOME}/applications/glines.desktop has NoDisplay=true
+# glines.desktop should not be shown
+# glines.desktop in ${XDG_DATA_DIR}/applications should be ignored.
+installDataAs ${XDG_DATA_HOME}/applications glines-2.desktop glines.desktop
+
+# ${XDG_DATA_HOME}/applications/mahjongg.desktop has Categories=Development
+# mahjongg.desktop should be shown under the Development menu
+# mahjongg.desktop in ${XDG_DATA_DIR}/applications should be ignored.
+installDataAs ${XDG_DATA_HOME}/applications mahjongg-2.desktop mahjongg.desktop
+
+# kde/gideon.desktop and kde-gideon.desktop are equivalent
+# only the version under ${XDG_DATA_HOME}/applications should show up in the menu
+# gideon.desktop in ${XDG_DATA_DIR}/applications/kde should be ignored.
+installDataAs ${XDG_DATA_DIR}/applications/kde gideon.desktop
+installDataAs ${XDG_DATA_HOME}/applications gideon.desktop kde-gideon.desktop
diff --git a/menu/tests/tests/t/result b/menu/tests/tests/t/result
new file mode 100644
index 0000000..a171b0d
--- /dev/null
+++ b/menu/tests/tests/t/result
@@ -0,0 +1,3 @@
+Development/ gideon.desktop /tmp/menutestdir/xdg_data_dir/applications/gideon.desktop
+Games-Correct/ freecell.desktop /tmp/menutestdir/xdg_data_dir/applications/freecell.desktop
+Games-Correct/ glines.desktop /tmp/menutestdir/xdg_data_dir/applications/glines.desktop
diff --git a/menu/tests/tests/t/test b/menu/tests/tests/t/test
new file mode 100644
index 0000000..8fccd16
--- /dev/null
+++ b/menu/tests/tests/t/test
@@ -0,0 +1,47 @@
+echo ">>> Order of <Move> operations ..."
+
+# Tests the type attribute in <MergeFile>
+
+# Generate applications.menu
+mkdir -p ${XDG_CONFIG_DIR}/menus
+./expand > ${XDG_CONFIG_DIR}/menus/applications.menu <<EOF
+ <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
+ "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
+
+<Menu>
+ <Name>KDE</Name>
+ <DefaultAppDirs/>
+ <Menu>
+ <Name>Development</Name>
+ <Menu>
+ <Name>Games</Name>
+ <Include>
+ <Category>Game</Category>
+ </Include>
+ </Menu>
+ <Include>
+ <Category>Development</Category>
+ </Include>
+ </Menu>
+ <Move>
+ <Old>Development/Games-New</Old>
+ <New>Games-Correct</New>
+ </Move>
+ <Move>
+ <Old>Development/Games</Old>
+ <New>Games-Wrong</New>
+ </Move>
+ <Menu>
+ <Name>Development</Name>
+ <Move>
+ <Old>Games</Old>
+ <New>Games-New</New>
+ </Move>
+ </Menu>
+</Menu>
+EOF
+
+# Move operations in sub-menus should be performed first
+
+# Install .desktop files
+installData ${XDG_DATA_DIR}/applications freecell.desktop glines.desktop gideon.desktop