POSSIBLE BUGS IN THE XDG MENU SPECIFICATION TEST SUITE =================================================================================================== 1. AppDir 2. DirectoryDir 3. Move 4. run-results.filtered 1. AppDir ---------------------------------------------------------------------------------------------------- >>> Running test tests/AppDir, purpose absolute path !!! Result file (tests/AppDir/result) for tests/AppDir missing >>> Failed OK tests: Failed tests: AppDir 0 tests passed, 1 tests failed 2. DirectoryDir ---------------------------------------------------------------------------------------------------- >>> Running test tests/DirectoryDir, purpose absolute path !!! Result file (tests/DirectoryDir/result) for tests/DirectoryDir missing >>> Failed OK tests: Failed tests: DirectoryDir 0 tests passed, 1 tests failed 3. Move ----------------------------------------------------------------------------------------------------- The test file tests/Move/test contains: Foo Bar BoardGames Apps BoardGames Games BoardGames BoardGame The expected result is: Games/ gataxx.desktop /tmp/menutestdir/xdg_data_dir/applications/gataxx.desktop Games/ mahjongg.desktop /tmp/menutestdir/xdg_data_dir/applications/mahjongg.desktop However, the specification makes clear: "Within each , execute operations in the order that they appear. If the destination path does not exist, simply relocate the origin element, and change its field to match the destination path." First, "Foo" is moved to "Bar". This is ignored as "Foo" does not exist. Then, "BoardGames" is moved to "Apps". As "Apps" does not exist, the name attribute of "BoardGames" is set to "Apps". The third old/new pair IMHO should be ignored as "BoardGames" is "Apps" now and thus, the origin menu for this move does not exist anymore. 4. run-results.filtered ----------------------------------------------------------------------------------------------------- This is a patch which fixes a typo in default_interpret_results(). The result "OK (different order, additional system items)" is never reached because run-result.sorted is written into requested-result.filtered. Index: menutest =================================================================== RCS file: /cvs/menus/menu-spec/tests/menutest,v retrieving revision 1.10 diff -r1.10 menutest 147c147 < grep "${MENUTESTDIR}" "${MENUTESTDIR}/run-result.sorted" > "${MENUTESTDIR}/required-result.filtered" 2> /dev/null --- > grep "${MENUTESTDIR}" "${MENUTESTDIR}/run-result.sorted" > "${MENUTESTDIR}/run-result.filtered" 2> /dev/null