diff options
author | Tom Whipple <tw@tomwhipple.com> | 2006-08-10 22:51:59 +0000 |
---|---|---|
committer | Tom Whipple <tw@tomwhipple.com> | 2006-08-10 22:51:59 +0000 |
commit | 86fb3927e6f7c7cb7b759d844c858b3e33a4175a (patch) | |
tree | c3fb8d7316ca92706136144ac23c3cddd4379704 | |
parent | 54c3d5c79da0776343dcc964a9dc35a21da72028 (diff) |
add desktop file icon association & svg render tests
-rw-r--r-- | tests/xdg-utils-usecases/data/icon_test.desktop | 10 | ||||
-rwxr-xr-x | tests/xdg-utils-usecases/t.11-desktop_file_icon | 64 | ||||
-rwxr-xr-x | tests/xdg-utils-usecases/t.12-svg_icon_render | 59 |
3 files changed, 133 insertions, 0 deletions
diff --git a/tests/xdg-utils-usecases/data/icon_test.desktop b/tests/xdg-utils-usecases/data/icon_test.desktop new file mode 100644 index 0000000..828a96c --- /dev/null +++ b/tests/xdg-utils-usecases/data/icon_test.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Version=1.0 +Encoding=UTF-8 +Type=Application + +Exec=touch xdg-test-desktop-icon-install.tmp + +Name=Icon Test +Icon=red +StartupNotify=false diff --git a/tests/xdg-utils-usecases/t.11-desktop_file_icon b/tests/xdg-utils-usecases/t.11-desktop_file_icon new file mode 100755 index 0000000..e742cda --- /dev/null +++ b/tests/xdg-utils-usecases/t.11-desktop_file_icon @@ -0,0 +1,64 @@ +#!/bin/bash + +. "$XDG_TEST_DIR/include/testassertions.sh" +. "$XDG_TEST_DIR/include/testcontrol.sh" + +test_desktop_file_icon() { + +test_start "$FUNCNAME: ensure that associations with filetypes is correct." + +ICON_SIZES="16 22 24 32 48 64 128" + +test_init + +# get icon files +for i in $ICON_SIZES; do + use_file "$XDG_TEST_DIR/icons/red-$i.png" TMP +done + +# get & edit desktop file +use_file "$XDG_TEST_DIR/xdg-utils-usecases/data/icon_test.desktop" DESKTOP_FILE +edit_file "$DESKTOP_FILE" 'red' ICON_NAME +TEST_DIR="$XDG_TEST_TMPDIR/show" +assert_exit 0 mkdir -p "$TEST_DIR" +assert_exit 0 cp "$DESKTOP_FILE" "$TEST_DIR/" + +test_procedure + +# install icons of all sizes +for i in $ICON_SIZES; do + assert_exit 0 xdg-icon-resource install --size "$i" "xdgtestdata-$XDG_TEST_ID-red-$i.png" "$ICON_NAME.png" + assert_nostdout + assert_nostderr +done + + +# open directory with test file +if [ `whoami` != 'root' ] ; then + assert_exit 0 xdg-open "$TEST_DIR" + assert_nostdout + assert_nostderr +else + assert_interactive "Please open '$TEST_DIR' in the file browser." +fi + +# ask user to cycle through sizes & ensure correct icons are displayed. +assert_interactive "Is a file named 'Icon Test' present in the directory?" y +assert_interactive "Does the icon consist of a red number in the list {$ICON_SIZES}?\n\tThe number should roughly correspond to the icon size.\n\t(You may need to select something like 'View->As Icons')" y +assert_interactive "Does the number change appropriately when you increase or decrease the view size?" y + +## cleanup +assert_interactive "Please close any windows opened by this test." C + +# remove icons +for i in $ICON_SIZES; do + assert_exit 0 xdg-icon-resource uninstall --size "$i" "$ICON_NAME.png" + assert_nostdout + assert_nostderr +done + + +test_result +} + +run_test test_desktop_file_icon diff --git a/tests/xdg-utils-usecases/t.12-svg_icon_render b/tests/xdg-utils-usecases/t.12-svg_icon_render new file mode 100755 index 0000000..f342fef --- /dev/null +++ b/tests/xdg-utils-usecases/t.12-svg_icon_render @@ -0,0 +1,59 @@ +#!/bin/bash + +. "$XDG_TEST_DIR/include/testassertions.sh" +. "$XDG_TEST_DIR/include/testcontrol.sh" + +test_svg_icon_render() { + +test_start "$FUNCNAME: ensure that SVG icons are rendered" + + +test_init + +# get icon file +use_file "$XDG_TEST_DIR/icons/red-SVG.svg" ICON_FILE + +# get & edit desktop file +use_file "$XDG_TEST_DIR/xdg-utils-usecases/data/icon_test.desktop" DESKTOP_FILE +edit_file "$DESKTOP_FILE" 'red' ICON_NAME + +TEST_DIR="$XDG_TEST_TMPDIR" +#assert_exit 0 mkdir -p "$TEST_DIR" +#assert_exit 0 cp "$DESKTOP_FILE" "$TEST_DIR/" + + + +test_procedure + +# install icons of all sizes +assert_exit 0 xdg-icon-resource install "$ICON_FILE" "$ICON_NAME.svg" +assert_nostdout +assert_nostderr + +# open directory with test file +if [ `whoami` != 'root' ] ; then + assert_exit 0 xdg-open "$TEST_DIR" + assert_nostdout + assert_nostderr +else + assert_interactive "Please open '$TEST_DIR' in the file browser." +fi + +# ask user to cycle through sizes & ensure correct icons are displayed. +assert_interactive "Is a file named 'Icon Test' present in the directory?" y +assert_interactive "Does the icon consist of the red text 'SVG'?\n\t(You may need to select something like 'View->As Icons')" y +assert_interactive "Does the text change size appropriately when the display size is changed?" y + +## cleanup +assert_interactive "Please close any windows opened by this test." C + +# remove icons +assert_exit 0 xdg-icon-resource uninstall "$ICON_NAME.svg" +assert_nostdout +assert_nostderr + + +test_result +} + +run_test test_svg_icon_render |