forked from enlightenment/efl
and move efreet tests out of src tree too.
SVN revision: 55641
This commit is contained in:
parent
e1ac73922d
commit
fa14105442
|
@ -28,54 +28,8 @@ efreet.spec.in \
|
|||
efreet.spec \
|
||||
README
|
||||
|
||||
.PHONY: doc coverage
|
||||
.PHONY: doc
|
||||
|
||||
doc:
|
||||
@echo "entering doc/"
|
||||
make -C doc doc
|
||||
|
||||
# Unit tests
|
||||
|
||||
if EFL_ENABLE_TESTS
|
||||
|
||||
check-local:
|
||||
@./src/tests/efreet_suite
|
||||
|
||||
else
|
||||
|
||||
check-local:
|
||||
@echo "reconfigure with --enable-tests"
|
||||
|
||||
endif
|
||||
|
||||
# Coverage report
|
||||
|
||||
if EFL_ENABLE_COVERAGE
|
||||
lcov-reset:
|
||||
@rm -rf coverage
|
||||
@find . -name "*.gcda" -exec rm {} \;
|
||||
@lcov --directory . --zerocounters
|
||||
|
||||
lcov-report:
|
||||
@mkdir coverage
|
||||
@lcov --compat-libtool --directory $(top_srcdir)/src --capture --output-file coverage/coverage.info
|
||||
@lcov -l coverage/coverage.info | grep -v "`cd $(top_srcdir) && pwd`" | cut -d: -f1 > coverage/remove
|
||||
@lcov -r coverage/coverage.info `cat coverage/remove` > coverage/coverage.cleaned.info
|
||||
@rm coverage/remove
|
||||
@mv coverage/coverage.cleaned.info coverage/coverage.info
|
||||
@genhtml -t "$(PACKAGE_STRING)" -o coverage coverage/coverage.info
|
||||
|
||||
coverage:
|
||||
@make lcov-reset
|
||||
@make check
|
||||
@make lcov-report
|
||||
else
|
||||
lcov-reset:
|
||||
@echo "reconfigure with --enable-coverage"
|
||||
|
||||
lcov-report:
|
||||
@echo "reconfigure with --enable-coverage"
|
||||
|
||||
coverage:
|
||||
@echo "reconfigure with --enable-tests --enable-coverage"
|
||||
endif
|
||||
|
|
|
@ -210,17 +210,6 @@ AC_SUBST(lt_enable_auto_import)
|
|||
AC_FUNC_ALLOCA
|
||||
AC_CHECK_FUNCS(strlcpy)
|
||||
|
||||
### Unit tests, coverage
|
||||
|
||||
EFL_CHECK_TESTS([enable_tests="yes"], [enable_tests="no"])
|
||||
|
||||
EFL_CHECK_COVERAGE([${enable_tests}], [enable_coverage="yes"], [enable_coverage="no"])
|
||||
EFREET_CFLAGS="${EFREET_CFLAGS} ${EFL_COVERAGE_CFLAGS}"
|
||||
EFREET_LIBS="${EFREET_LIBS} ${EFL_COVERAGE_LIBS}"
|
||||
if test "x$enable_coverage" = "xyes" ; then
|
||||
EFREET_CFLAGS="${EFREET_CFLAGS} ${EFL_DEBUG_CFLAGS}"
|
||||
fi
|
||||
|
||||
AC_SUBST(requirement_efreet)
|
||||
|
||||
AC_OUTPUT([
|
||||
|
@ -233,10 +222,6 @@ doc/Makefile
|
|||
doc/Doxyfile
|
||||
src/Makefile
|
||||
src/lib/Makefile
|
||||
src/tests/Makefile
|
||||
src/tests/data/Makefile
|
||||
src/tests/data/sub/Makefile
|
||||
src/tests/compare/Makefile
|
||||
src/bin/Makefile
|
||||
])
|
||||
|
||||
|
@ -259,9 +244,6 @@ echo " Sloppy.............: ${enable_sloppy_spec}"
|
|||
echo
|
||||
echo " Icon cache...........: ${enable_icon_cache}"
|
||||
echo
|
||||
echo " Tests................: ${enable_tests}"
|
||||
echo " Coverage.............: ${enable_coverage}"
|
||||
echo
|
||||
echo " Documentation........: ${build_doc}"
|
||||
echo
|
||||
echo "Compilation............: make (or gmake)"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
|
||||
SUBDIRS = lib bin tests
|
||||
SUBDIRS = lib bin
|
||||
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
.deps
|
||||
.libs
|
||||
Makefile
|
||||
Makefile.in
|
||||
efreet_spec_test
|
||||
efreet_test
|
||||
efreet_cache_test
|
|
@ -1,69 +0,0 @@
|
|||
|
||||
SUBDIRS = data compare
|
||||
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I. \
|
||||
-I$(top_srcdir)/src/lib \
|
||||
-DPACKAGE_BIN_DIR=\"$(bindir)\" \
|
||||
-DPACKAGE_LIB_DIR=\"$(libdir)\" \
|
||||
-DPACKAGE_DATA_DIR=\"$(pkgdatadir)\" \
|
||||
@EFREET_CFLAGS@
|
||||
|
||||
bin_PROGRAMS = efreet_test efreet_spec_test efreet_cache_test
|
||||
|
||||
if ICON_CACHE
|
||||
bin_PROGRAMS += efreet_icon_cache_dump
|
||||
endif
|
||||
|
||||
efreet_test_LDADD = $(top_builddir)/src/lib/libefreet.la \
|
||||
$(top_builddir)/src/lib/libefreet_mime.la \
|
||||
@EFREET_LIBS@
|
||||
efreet_test_SOURCES = \
|
||||
ef_test.h \
|
||||
ef_data_dirs.c \
|
||||
ef_icon_theme.c \
|
||||
ef_ini.c \
|
||||
ef_utils.c \
|
||||
ef_desktop.c \
|
||||
ef_menu.c \
|
||||
ef_mime.c \
|
||||
main.c
|
||||
|
||||
if DEFAULT_VISIBILITY
|
||||
efreet_test_SOURCES += \
|
||||
ef_locale.c
|
||||
endif
|
||||
|
||||
efreet_spec_test_LDADD = $(top_builddir)/src/lib/libefreet.la @EINA_LIBS@
|
||||
efreet_spec_test_SOURCES = \
|
||||
efreet_spec_test.c
|
||||
|
||||
efreet_cache_test_LDADD = $(top_builddir)/src/lib/libefreet.la @EFREET_LIBS@
|
||||
efreet_cache_test_SOURCES = \
|
||||
ef_cache.c
|
||||
|
||||
if EFL_ENABLE_TESTS
|
||||
|
||||
check_PROGRAMS = efreet_suite
|
||||
|
||||
efreet_suite_SOURCES = \
|
||||
efreet_suite.c \
|
||||
efreet_test_efreet.c \
|
||||
efreet_test_efreet_cache.c
|
||||
|
||||
efreet_suite_LDADD = @CHECK_LIBS@ $(top_builddir)/src/lib/libefreet.la
|
||||
|
||||
endif
|
||||
|
||||
if ICON_CACHE
|
||||
|
||||
efreet_icon_cache_dump_LDADD = \
|
||||
$(top_builddir)/src/lib/libefreet.la \
|
||||
@EFREET_LIBS@
|
||||
|
||||
efreet_icon_cache_dump_SOURCES = \
|
||||
efreet_icon_cache_dump.c
|
||||
|
||||
endif
|
|
@ -1,8 +0,0 @@
|
|||
.deps
|
||||
.libs
|
||||
Makefile
|
||||
Makefile.in
|
||||
compare_results
|
||||
ecore_alloc
|
||||
efreet_alloc
|
||||
efreet_menu_alloc
|
|
@ -1,15 +0,0 @@
|
|||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I. \
|
||||
-I$(top_srcdir)/src/lib \
|
||||
@EFREET_CFLAGS@
|
||||
|
||||
bin_PROGRAMS = efreet_alloc efreet_menu_alloc
|
||||
|
||||
efreet_menu_alloc_SOURCES = efreet_menu_alloc.c comp.h
|
||||
efreet_menu_alloc_LDADD = $(top_builddir)/src/lib/libefreet.la @EFREET_LIBS@
|
||||
|
||||
efreet_alloc_SOURCES = efreet_alloc.c comp.h
|
||||
efreet_alloc_LDADD = $(top_builddir)/src/lib/libefreet.la @EFREET_LIBS@
|
||||
|
|
@ -1,527 +0,0 @@
|
|||
#ifndef COMP_H
|
||||
#define COMP_H
|
||||
|
||||
#define LOOPS 1000
|
||||
#define THEME "Tango"
|
||||
#define SIZE 16
|
||||
|
||||
#define ADDRESS_BOOK_NEW "address-book-new"
|
||||
#define APPLICATION_EXIT "application-exit"
|
||||
#define APPOINTMENT_NEW "appointment-new"
|
||||
#define CONTACT_NEW "contact-new"
|
||||
#define DIALOG_APPLY "dialog-apply"
|
||||
#define DIALOG_CANCEL "dialog-cancel"
|
||||
#define DIALOG_CLOSE "dialog-close"
|
||||
#define DIALOG_OK "dialog-ok"
|
||||
#define DOCUMENT_NEW "document-new"
|
||||
#define DOCUMENT_OPEN "document-open"
|
||||
#define DOCUMENT_OPEN_RECENT "document-open-recent"
|
||||
#define DOCUMENT_PAGE_SETUP "document-page-setup"
|
||||
#define DOCUMENT_PRINT "document-print"
|
||||
#define DOCUMENT_PRINT_PREVIEW "document-print-preview"
|
||||
#define DOCUMENT_PROPERTIES "document-properties"
|
||||
#define DOCUMENT_REVERT "document-revert"
|
||||
#define DOCUMENT_SAVE "document-save"
|
||||
#define DOCUMENT_SAVE_AS "document-save-as"
|
||||
#define EDIT_COPY "edit-copy"
|
||||
#define EDIT_CUT "edit-cut"
|
||||
#define EDIT_DELETE "edit-delete"
|
||||
#define EDIT_FIND "edit-find"
|
||||
#define EDIT_FIND_REPLACE "edit-find-replace"
|
||||
#define EDIT_PASTE "edit-paste"
|
||||
#define EDIT_REDO "edit-redo"
|
||||
#define EDIT_SELECT_ALL "edit-select-all"
|
||||
#define EDIT_UNDO "edit-undo"
|
||||
#define FORMAT_INDENT_LESS "format-indent-less"
|
||||
#define FORMAT_INDENT_MORE "format-indent-more"
|
||||
#define FORMAT_JUSTIFY_CENTER "format-justify-center"
|
||||
#define FORMAT_JUSTIFY_FILL "format-justify-fill"
|
||||
#define FORMAT_JUSTIFY_LEFT "format-justify-left"
|
||||
#define FORMAT_JUSTIFY_RIGHT "format-justify-right"
|
||||
#define FORMAT_TEXT_DIRECTION_LTR "format-text-direction-ltr"
|
||||
#define FORMAT_TEXT_DIRECTION_RTL "format-text-direction-rtl"
|
||||
#define FORMAT_TEXT_BOLD "format-text-bold"
|
||||
#define FORMAT_TEXT_ITALIC "format-text-italic"
|
||||
#define FORMAT_TEXT_UNDERLINE "format-text-underline"
|
||||
#define FORMAT_TEXT_STRIKETHROUGH "format-text-strikethrough"
|
||||
#define GO_BOTTOM "go-bottom"
|
||||
#define GO_DOWN "go-down"
|
||||
#define GO_FIRST "go-first"
|
||||
#define GO_HOME "go-home"
|
||||
#define GO_JUMP "go-jump"
|
||||
#define GO_LAST "go-last"
|
||||
#define GO_NEXT "go-next"
|
||||
#define GO_PREVIOUS "go-previous"
|
||||
#define GO_TOP "go-top"
|
||||
#define GO_UP "go-up"
|
||||
#define HELP_ABOUT "help-about"
|
||||
#define HELP_CONTENTS "help-contents"
|
||||
#define HELP_FAQ "help-faq"
|
||||
#define INSERT_IMAGE "insert-image"
|
||||
#define INSERT_LINK "insert-link"
|
||||
#define INSERT_OBJECT "insert-object"
|
||||
#define INSERT_TEXT "insert-text"
|
||||
#define LIST_ADD "list-add"
|
||||
#define LIST_REMOVE "list-remove"
|
||||
#define MAIL_FORWARD "mail-forward"
|
||||
#define MAIL_MARK_IMPORTANT "mail-mark-important"
|
||||
#define MAIL_MARK_JUNK "mail-mark-junk"
|
||||
#define MAIL_MARK_NOTJUNK "mail-mark-notjunk"
|
||||
#define MAIL_MARK_READ "mail-mark-read"
|
||||
#define MAIL_MARK_UNREAD "mail-mark-unread"
|
||||
#define MAIL_MESSAGE_NEW "mail-message-new"
|
||||
#define MAIL_REPLY_ALL "mail-reply-all"
|
||||
#define MAIL_REPLY_SENDER "mail-reply-sender"
|
||||
#define MAIL_SEND_RECEIVE "mail-send-receive"
|
||||
#define MEDIA_EJECT "media-eject"
|
||||
#define MEDIA_PLAYBACK_PAUSE "media-playback-pause"
|
||||
#define MEDIA_PLAYBACK_START "media-playback-start"
|
||||
#define MEDIA_PLAYBACK_STOP "media-playback-stop"
|
||||
#define MEDIA_RECORD "media-record"
|
||||
#define MEDIA_SEEK_BACKWARD "media-seek-backward"
|
||||
#define MEDIA_SEEK_FORWARD "media-seek-forward"
|
||||
#define MEDIA_SKIP_BACKWARD "media-skip-backward"
|
||||
#define MEDIA_SKIP_FORWARD "media-skip-forward"
|
||||
#define SYSTEM_LOCK_SCREEN "system-lock-screen"
|
||||
#define SYSTEM_LOG_OUT "system-log-out"
|
||||
#define SYSTEM_RUN "system-run"
|
||||
#define SYSTEM_SEARCH "system-search"
|
||||
#define TOOLS_CHECK_SPELLING "tools-check-spelling"
|
||||
#define VIEW_FULLSCREEN "view-fullscreen"
|
||||
#define VIEW_REFRESH "view-refresh"
|
||||
#define VIEW_SORT_ASCENDING "view-sort-ascending"
|
||||
#define VIEW_SORT_DESCENDING "view-sort-descending"
|
||||
#define WINDOW_CLOSE "window-close"
|
||||
#define WINDOW_NEW "window-new"
|
||||
#define ZOOM_BEST_FIT "zoom-best-fit"
|
||||
#define ZOOM_IN "zoom-in"
|
||||
#define ZOOM_ORIGINAL "zoom-original"
|
||||
#define ZOOM_OUT "zoom-out"
|
||||
|
||||
#define PROCESS_WORKING "process-working"
|
||||
|
||||
#define ACCESSORIES_CALCULATOR "accessories-calculator"
|
||||
#define ACCESSORIES_CHARACTER_MAP "accessories-character-map"
|
||||
#define ACCESSORIES_DICTIONARY "accessories-dictionary"
|
||||
#define ACCESSORIES_TEXT_EDITOR "accessories-text-editor"
|
||||
#define HELP_BROWSER "help-browser"
|
||||
#define MULTIMEDIA_VOLUME_CONTROL "multimedia-volume-control"
|
||||
#define PREFERENCES_DESKTOP_ACCESSIBILITY "preferences-desktop-accessibility"
|
||||
#define PREFERENCES_DESKTOP_FONT "preferences-desktop-font"
|
||||
#define PREFERENCES_DESKTOP_KEYBOARD "preferences-desktop-keyboard"
|
||||
#define PREFERENCES_DESKTOP_LOCALE "preferences-desktop-locale"
|
||||
#define PREFERENCES_DESKTOP_MULTIMEDIA "preferences-desktop-multimedia"
|
||||
#define PREFERENCES_DESKTOP_SCREENSAVER "preferences-desktop-screensaver"
|
||||
#define PREFERENCES_DESKTOP_THEME "preferences-desktop-theme"
|
||||
#define PREFERENCES_DESKTOP_WALLPAPER "preferences-desktop-wallpaper"
|
||||
#define SYSTEM_FILE_MANAGER "system-file-manager"
|
||||
#define SYSTEM_SOFTWARE_UPDATE "system-software-update"
|
||||
#define UTILITIES_TERMINAL "utilities-terminal"
|
||||
|
||||
#define APPLICATIONS_ACCESSORIES "applications-accessories"
|
||||
#define APPLICATIONS_DEVELOPMENT "applications-development"
|
||||
#define APPLICATIONS_GAMES "applications-games"
|
||||
#define APPLICATIONS_GRAPHICS "applications-graphics"
|
||||
#define APPLICATIONS_INTERNET "applications-internet"
|
||||
#define APPLICATIONS_MULTIMEDIA "applications-multimedia"
|
||||
#define APPLICATIONS_OFFICE "applications-office"
|
||||
#define APPLICATIONS_OTHER "applications-other"
|
||||
#define APPLICATIONS_SYSTEM "applications-system"
|
||||
#define APPLICATIONS_UTILITIES "applications-utilities"
|
||||
#define PREFERENCES_DESKTOP "preferences-desktop"
|
||||
#define PREFERENCES_DESKTOP_ACCESSIBILITY "preferences-desktop-accessibility"
|
||||
#define PREFERENCES_DESKTOP_PERIPHERALS "preferences-desktop-peripherals"
|
||||
#define PREFERENCES_DESKTOP_PERSONAL "preferences-desktop-personal"
|
||||
#define PREFERENCES_OTHER "preferences-other"
|
||||
#define PREFERENCES_SYSTEM "preferences-system"
|
||||
#define PREFERENCES_SYSTEM_NETWORK "preferences-system-network"
|
||||
#define SYSTEM_HELP "system-help"
|
||||
|
||||
#define AUDIO_CARD "audio-card"
|
||||
#define AUDIO_INPUT_MICROPHONE "audio-input-microphone"
|
||||
#define BATTERY "battery"
|
||||
#define CAMERA_PHOTO "camera-photo"
|
||||
#define CAMERA_VIDEO "camera-video"
|
||||
#define COMPUTER "computer"
|
||||
#define DRIVE_CDROM "drive-cdrom"
|
||||
#define DRIVE_HARDDISK "drive-harddisk"
|
||||
#define DRIVE_REMOVABLE_MEDIA "drive-removable-media"
|
||||
#define INPUT_GAMING "input-gaming"
|
||||
#define INPUT_KEYBOARD "input-keyboard"
|
||||
#define INPUT_MOUSE "input-mouse"
|
||||
#define MEDIA_CDROM "media-cdrom"
|
||||
#define MEDIA_FLOPPY "media-floppy"
|
||||
#define MULTIMEDIA_PLAYER "multimedia-player"
|
||||
#define NETWORK_WIRED "network-wired"
|
||||
#define NETWORK_WIRELESS "network-wireless"
|
||||
#define PRINTER "printer"
|
||||
|
||||
#define EMBLEM_DEFAULT "emblem-default"
|
||||
#define EMBLEM_DOCUMENTS "emblem-documents"
|
||||
#define EMBLEM_DOWNLOADS "emblem-downloads"
|
||||
#define EMBLEM_FAVORITE "emblem-favorite"
|
||||
#define EMBLEM_IMPORTANT "emblem-important"
|
||||
#define EMBLEM_MAIL "emblem-mail"
|
||||
#define EMBLEM_PHOTOS "emblem-photos"
|
||||
#define EMBLEM_READONLY "emblem-readonly"
|
||||
#define EMBLEM_SHARED "emblem-shared"
|
||||
#define EMBLEM_SYMBOLIC_LINK "emblem-symbolic-link"
|
||||
#define EMBLEM_SYNCHRONIZED "emblem-synchronized"
|
||||
#define EMBLEM_SYSTEM "emblem-system"
|
||||
#define EMBLEM_UNREADABLE "emblem-unreadable"
|
||||
|
||||
#define FACE_ANGEL "face-angel"
|
||||
#define FACE_CRYING "face-crying"
|
||||
#define FACE_DEVIL_GRIN "face-devil-grin"
|
||||
#define FACE_DEVIL_SAD "face-devil-sad"
|
||||
#define FACE_GLASSES "face-glasses"
|
||||
#define FACE_KISS "face-kiss"
|
||||
#define FACE_MONKEY "face-monkey"
|
||||
#define FACE_PLAIN "face-plain"
|
||||
#define FACE_SAD "face-sad"
|
||||
#define FACE_SMILE "face-smile"
|
||||
#define FACE_SMILE_BIG "face-smile-big"
|
||||
#define FACE_SMIRK "face-smirk"
|
||||
#define FACE_SURPRISE "face-surprise"
|
||||
#define FACE_WINK "face-wink"
|
||||
|
||||
#define APPLICATION_X_EXECUTABLE "application-x-executable"
|
||||
#define AUDIO_X_GENERIC "audio-x-generic"
|
||||
#define FONT_X_GENERIC "font-x-generic"
|
||||
#define IMAGE_X_GENERIC "image-x-generic"
|
||||
#define PACKAGE_X_GENERIC "package-x-generic"
|
||||
#define TEXT_HTML "text-html"
|
||||
#define TEXT_X_GENERIC "text-x-generic"
|
||||
#define TEXT_X_GENERIC_TEMPLATE "text-x-generic-template"
|
||||
#define TEXT_X_SCRIPT "text-x-script"
|
||||
#define VIDEO_X_GENERIC "video-x-generic"
|
||||
#define X_OFFICE_ADDRESS_BOOK "x-office-address-book"
|
||||
#define X_OFFICE_CALENDAR "x-office-calendar"
|
||||
#define X_OFFICE_DOCUMENT "x-office-document"
|
||||
#define X_OFFICE_PRESENTATION "x-office-presentation"
|
||||
#define X_OFFICE_SPREADSHEET "x-office-spreadsheet"
|
||||
|
||||
#define FOLDER "folder"
|
||||
#define FOLDER_REMOTE "folder-remote"
|
||||
#define NETWORK_SERVER "network-server"
|
||||
#define NETWORK_WORKGROUP "network-workgroup"
|
||||
#define START_HERE "start-here"
|
||||
#define USER_DESKTOP "user-desktop"
|
||||
#define USER_HOME "user-home"
|
||||
#define USER_TRASH "user-trash"
|
||||
|
||||
#define APPOINTMENT_MISSED "appointment-missed"
|
||||
#define APPOINTMENT_SOON "appointment-soon"
|
||||
#define AUDIO_VOLUME_HIGH "audio-volume-high"
|
||||
#define AUDIO_VOLUME_LOW "audio-volume-low"
|
||||
#define AUDIO_VOLUME_MEDIUM "audio-volume-medium"
|
||||
#define AUDIO_VOLUME_MUTED "audio-volume-muted"
|
||||
#define BATTERY_CAUTION "battery-caution"
|
||||
#define BATTERY_LOW "battery-low"
|
||||
#define DIALOG_ERROR "dialog-error"
|
||||
#define DIALOG_INFORMATION "dialog-information"
|
||||
#define DIALOG_PASSWORD "dialog-password"
|
||||
#define DIALOG_QUESTION "dialog-question"
|
||||
#define DIALOG_WARNING "dialog-warning"
|
||||
#define FOLDER_DRAG_ACCEPT "folder-drag-accept"
|
||||
#define FOLDER_OPEN "folder-open"
|
||||
#define FOLDER_VISITING "folder-visiting"
|
||||
#define IMAGE_LOADING "image-loading"
|
||||
#define IMAGE_MISSING "image-missing"
|
||||
#define MAIL_ATTACHMENT "mail-attachment"
|
||||
#define MAIL_UNREAD "mail-unread"
|
||||
#define MAIL_READ "mail-read"
|
||||
#define MAIL_REPLIED "mail-replied"
|
||||
#define MAIL_SIGNED "mail-signed"
|
||||
#define MAIL_SIGNED_VERIFIED "mail-signed-verified"
|
||||
#define MEDIA_PLAYLIST_REPEAT "media-playlist-repeat"
|
||||
#define MEDIA_PLAYLIST_SHUFFLE "media-playlist-shuffle"
|
||||
#define NETWORK_ERROR "network-error"
|
||||
#define NETWORK_IDLE "network-idle"
|
||||
|
||||
#define NETWORK_OFFLINE "network-offline"
|
||||
#define NETWORK_RECEIVE "network-receive"
|
||||
#define NETWORK_TRANSMIT "network-transmit"
|
||||
#define NETWORK_TRANSMIT_RECEIVE "network-transmit-receive"
|
||||
#define PRINTER_ERROR "printer-error"
|
||||
#define PRINTER_PRINTING "printer-printing"
|
||||
#define SOFTWARE_UPDATE_AVAILABLE "software-update-available"
|
||||
#define SOFTWARE_UPDATE_URGENT "software-update-urgent"
|
||||
#define SYNC_ERROR "sync-error"
|
||||
#define SYNC_SYNCHRONIZING "sync-synchronizing"
|
||||
#define TASK_DUE "task-due"
|
||||
#define TASK_PASSED_DUE "task-passed-due"
|
||||
#define USER_AWAY "user-away"
|
||||
#define USER_IDLE "user-idle"
|
||||
#define USER_OFFLINE "user-offline"
|
||||
#define USER_ONLINE "user-online"
|
||||
#define USER_TRASH_FULL "user-trash-full"
|
||||
#define WEATHER_CLEAR "weather-clear"
|
||||
#define WEATHER_CLEAR_NIGHT "weather-clear-night"
|
||||
#define WEATHER_FEW_CLOUDS "weather-few-clouds"
|
||||
#define WEATHER_FEW_CLOUDS_NIGHT "weather-few-clouds-night"
|
||||
#define WEATHER_FOG "weather-fog"
|
||||
#define WEATHER_OVERCAST "weather-overcast"
|
||||
#define WEATHER_SEVERE_ALERT "weather-severe-alert"
|
||||
#define WEATHER_SHOWERS "weather-showers"
|
||||
#define WEATHER_SHOWERS_SCATTERED "weather-showers-scattered"
|
||||
#define WEATHER_SNOW "weather-snow"
|
||||
#define WEATHER_STORM "weather-storm"
|
||||
|
||||
const char *icons[] = {
|
||||
ADDRESS_BOOK_NEW,
|
||||
APPLICATION_EXIT,
|
||||
APPOINTMENT_NEW,
|
||||
CONTACT_NEW,
|
||||
DIALOG_APPLY,
|
||||
DIALOG_CANCEL,
|
||||
DIALOG_CLOSE,
|
||||
DIALOG_OK,
|
||||
DOCUMENT_NEW,
|
||||
DOCUMENT_OPEN,
|
||||
DOCUMENT_OPEN_RECENT,
|
||||
DOCUMENT_PAGE_SETUP,
|
||||
DOCUMENT_PRINT,
|
||||
DOCUMENT_PRINT_PREVIEW,
|
||||
DOCUMENT_PROPERTIES,
|
||||
DOCUMENT_REVERT,
|
||||
DOCUMENT_SAVE,
|
||||
DOCUMENT_SAVE_AS,
|
||||
EDIT_COPY,
|
||||
EDIT_CUT,
|
||||
EDIT_DELETE,
|
||||
EDIT_FIND,
|
||||
EDIT_FIND_REPLACE,
|
||||
EDIT_PASTE,
|
||||
EDIT_REDO,
|
||||
EDIT_SELECT_ALL,
|
||||
EDIT_UNDO,
|
||||
FORMAT_INDENT_LESS,
|
||||
FORMAT_INDENT_MORE,
|
||||
FORMAT_JUSTIFY_CENTER,
|
||||
FORMAT_JUSTIFY_FILL,
|
||||
FORMAT_JUSTIFY_LEFT,
|
||||
FORMAT_JUSTIFY_RIGHT,
|
||||
FORMAT_TEXT_DIRECTION_LTR,
|
||||
FORMAT_TEXT_DIRECTION_RTL,
|
||||
FORMAT_TEXT_BOLD,
|
||||
FORMAT_TEXT_ITALIC,
|
||||
FORMAT_TEXT_UNDERLINE,
|
||||
FORMAT_TEXT_STRIKETHROUGH,
|
||||
GO_BOTTOM,
|
||||
GO_DOWN,
|
||||
GO_FIRST,
|
||||
GO_HOME,
|
||||
GO_JUMP,
|
||||
GO_LAST,
|
||||
GO_NEXT,
|
||||
GO_PREVIOUS,
|
||||
GO_TOP,
|
||||
GO_UP,
|
||||
HELP_ABOUT,
|
||||
HELP_CONTENTS,
|
||||
HELP_FAQ,
|
||||
INSERT_IMAGE,
|
||||
INSERT_LINK,
|
||||
INSERT_OBJECT,
|
||||
INSERT_TEXT,
|
||||
LIST_ADD,
|
||||
LIST_REMOVE,
|
||||
MAIL_FORWARD,
|
||||
MAIL_MARK_IMPORTANT,
|
||||
MAIL_MARK_JUNK,
|
||||
MAIL_MARK_NOTJUNK,
|
||||
MAIL_MARK_READ,
|
||||
MAIL_MARK_UNREAD,
|
||||
MAIL_MESSAGE_NEW,
|
||||
MAIL_REPLY_ALL,
|
||||
MAIL_REPLY_SENDER,
|
||||
MAIL_SEND_RECEIVE,
|
||||
MEDIA_EJECT,
|
||||
MEDIA_PLAYBACK_PAUSE,
|
||||
MEDIA_PLAYBACK_START,
|
||||
MEDIA_PLAYBACK_STOP,
|
||||
MEDIA_RECORD,
|
||||
MEDIA_SEEK_BACKWARD,
|
||||
MEDIA_SEEK_FORWARD,
|
||||
MEDIA_SKIP_BACKWARD,
|
||||
MEDIA_SKIP_FORWARD,
|
||||
SYSTEM_LOCK_SCREEN,
|
||||
SYSTEM_LOG_OUT,
|
||||
SYSTEM_RUN,
|
||||
SYSTEM_SEARCH,
|
||||
TOOLS_CHECK_SPELLING,
|
||||
VIEW_FULLSCREEN,
|
||||
VIEW_REFRESH,
|
||||
VIEW_SORT_ASCENDING,
|
||||
VIEW_SORT_DESCENDING,
|
||||
WINDOW_CLOSE,
|
||||
WINDOW_NEW,
|
||||
ZOOM_BEST_FIT,
|
||||
ZOOM_IN,
|
||||
ZOOM_ORIGINAL,
|
||||
ZOOM_OUT,
|
||||
PROCESS_WORKING,
|
||||
ACCESSORIES_CALCULATOR,
|
||||
ACCESSORIES_CHARACTER_MAP,
|
||||
ACCESSORIES_DICTIONARY,
|
||||
ACCESSORIES_TEXT_EDITOR,
|
||||
HELP_BROWSER,
|
||||
MULTIMEDIA_VOLUME_CONTROL,
|
||||
PREFERENCES_DESKTOP_ACCESSIBILITY,
|
||||
PREFERENCES_DESKTOP_FONT,
|
||||
PREFERENCES_DESKTOP_KEYBOARD,
|
||||
PREFERENCES_DESKTOP_LOCALE,
|
||||
PREFERENCES_DESKTOP_MULTIMEDIA,
|
||||
PREFERENCES_DESKTOP_SCREENSAVER,
|
||||
PREFERENCES_DESKTOP_THEME,
|
||||
PREFERENCES_DESKTOP_WALLPAPER,
|
||||
SYSTEM_FILE_MANAGER,
|
||||
SYSTEM_SOFTWARE_UPDATE,
|
||||
UTILITIES_TERMINAL,
|
||||
APPLICATIONS_ACCESSORIES,
|
||||
APPLICATIONS_DEVELOPMENT,
|
||||
APPLICATIONS_GAMES,
|
||||
APPLICATIONS_GRAPHICS,
|
||||
APPLICATIONS_INTERNET,
|
||||
APPLICATIONS_MULTIMEDIA,
|
||||
APPLICATIONS_OFFICE,
|
||||
APPLICATIONS_OTHER,
|
||||
APPLICATIONS_SYSTEM,
|
||||
APPLICATIONS_UTILITIES,
|
||||
PREFERENCES_DESKTOP,
|
||||
PREFERENCES_DESKTOP_ACCESSIBILITY,
|
||||
PREFERENCES_DESKTOP_PERIPHERALS,
|
||||
PREFERENCES_DESKTOP_PERSONAL,
|
||||
PREFERENCES_OTHER,
|
||||
PREFERENCES_SYSTEM,
|
||||
PREFERENCES_SYSTEM_NETWORK,
|
||||
SYSTEM_HELP,
|
||||
AUDIO_CARD,
|
||||
AUDIO_INPUT_MICROPHONE,
|
||||
BATTERY,
|
||||
CAMERA_PHOTO,
|
||||
CAMERA_VIDEO,
|
||||
COMPUTER,
|
||||
DRIVE_CDROM,
|
||||
DRIVE_HARDDISK,
|
||||
DRIVE_REMOVABLE_MEDIA,
|
||||
INPUT_GAMING,
|
||||
INPUT_KEYBOARD,
|
||||
INPUT_MOUSE,
|
||||
MEDIA_CDROM,
|
||||
MEDIA_FLOPPY,
|
||||
MULTIMEDIA_PLAYER,
|
||||
NETWORK_WIRED,
|
||||
NETWORK_WIRELESS,
|
||||
PRINTER,
|
||||
EMBLEM_DEFAULT,
|
||||
EMBLEM_DOCUMENTS,
|
||||
EMBLEM_DOWNLOADS,
|
||||
EMBLEM_FAVORITE,
|
||||
EMBLEM_IMPORTANT,
|
||||
EMBLEM_MAIL,
|
||||
EMBLEM_PHOTOS,
|
||||
EMBLEM_READONLY,
|
||||
EMBLEM_SHARED,
|
||||
EMBLEM_SYMBOLIC_LINK,
|
||||
EMBLEM_SYNCHRONIZED,
|
||||
EMBLEM_SYSTEM,
|
||||
EMBLEM_UNREADABLE,
|
||||
FACE_ANGEL,
|
||||
FACE_CRYING,
|
||||
FACE_DEVIL_GRIN,
|
||||
FACE_DEVIL_SAD,
|
||||
FACE_GLASSES,
|
||||
FACE_KISS,
|
||||
FACE_MONKEY,
|
||||
FACE_PLAIN,
|
||||
FACE_SAD,
|
||||
FACE_SMILE,
|
||||
FACE_SMILE_BIG,
|
||||
FACE_SMIRK,
|
||||
FACE_SURPRISE,
|
||||
FACE_WINK,
|
||||
APPLICATION_X_EXECUTABLE,
|
||||
AUDIO_X_GENERIC,
|
||||
FONT_X_GENERIC,
|
||||
IMAGE_X_GENERIC,
|
||||
PACKAGE_X_GENERIC,
|
||||
TEXT_HTML,
|
||||
TEXT_X_GENERIC,
|
||||
TEXT_X_GENERIC_TEMPLATE,
|
||||
TEXT_X_SCRIPT,
|
||||
VIDEO_X_GENERIC,
|
||||
X_OFFICE_ADDRESS_BOOK,
|
||||
X_OFFICE_CALENDAR,
|
||||
X_OFFICE_DOCUMENT,
|
||||
X_OFFICE_PRESENTATION,
|
||||
X_OFFICE_SPREADSHEET,
|
||||
FOLDER,
|
||||
FOLDER_REMOTE,
|
||||
NETWORK_SERVER,
|
||||
NETWORK_WORKGROUP,
|
||||
START_HERE,
|
||||
USER_DESKTOP,
|
||||
USER_HOME,
|
||||
USER_TRASH,
|
||||
APPOINTMENT_MISSED,
|
||||
APPOINTMENT_SOON,
|
||||
AUDIO_VOLUME_HIGH,
|
||||
AUDIO_VOLUME_LOW,
|
||||
AUDIO_VOLUME_MEDIUM,
|
||||
AUDIO_VOLUME_MUTED,
|
||||
BATTERY_CAUTION,
|
||||
BATTERY_LOW,
|
||||
DIALOG_ERROR,
|
||||
DIALOG_INFORMATION,
|
||||
DIALOG_PASSWORD,
|
||||
DIALOG_QUESTION,
|
||||
DIALOG_WARNING,
|
||||
FOLDER_DRAG_ACCEPT,
|
||||
FOLDER_OPEN,
|
||||
FOLDER_VISITING,
|
||||
IMAGE_LOADING,
|
||||
IMAGE_MISSING,
|
||||
MAIL_ATTACHMENT,
|
||||
MAIL_UNREAD,
|
||||
MAIL_READ,
|
||||
MAIL_REPLIED,
|
||||
MAIL_SIGNED,
|
||||
MAIL_SIGNED_VERIFIED,
|
||||
MEDIA_PLAYLIST_REPEAT,
|
||||
MEDIA_PLAYLIST_SHUFFLE,
|
||||
NETWORK_ERROR,
|
||||
NETWORK_IDLE,
|
||||
NETWORK_OFFLINE,
|
||||
NETWORK_RECEIVE,
|
||||
NETWORK_TRANSMIT,
|
||||
NETWORK_TRANSMIT_RECEIVE,
|
||||
PRINTER_ERROR,
|
||||
PRINTER_PRINTING,
|
||||
SOFTWARE_UPDATE_AVAILABLE,
|
||||
SOFTWARE_UPDATE_URGENT,
|
||||
SYNC_ERROR,
|
||||
SYNC_SYNCHRONIZING,
|
||||
TASK_DUE,
|
||||
TASK_PASSED_DUE,
|
||||
USER_AWAY,
|
||||
USER_IDLE,
|
||||
USER_OFFLINE,
|
||||
USER_ONLINE,
|
||||
USER_TRASH_FULL,
|
||||
WEATHER_CLEAR,
|
||||
WEATHER_CLEAR_NIGHT,
|
||||
WEATHER_FEW_CLOUDS,
|
||||
WEATHER_FEW_CLOUDS_NIGHT,
|
||||
WEATHER_FOG,
|
||||
WEATHER_OVERCAST,
|
||||
WEATHER_SEVERE_ALERT,
|
||||
WEATHER_SHOWERS,
|
||||
WEATHER_SHOWERS_SCATTERED,
|
||||
WEATHER_SNOW,
|
||||
WEATHER_STORM,
|
||||
NULL
|
||||
};
|
||||
|
||||
#endif
|
|
@ -1,27 +0,0 @@
|
|||
#include <Efreet.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include "comp.h"
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
int i = 0, k;
|
||||
const char *path;
|
||||
|
||||
efreet_init();
|
||||
|
||||
for (k = 0; k < LOOPS; k++)
|
||||
{
|
||||
for (i = 0; icons[i]; i++)
|
||||
{
|
||||
path = efreet_icon_path_find(THEME, icons[i], SIZE);
|
||||
// printf("%s: %s\n", icons[i], (path ? path : "NOT FOUND"));
|
||||
}
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
#include <Efreet.h>
|
||||
#include <stdio.h>
|
||||
#include "comp.h"
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
int k;
|
||||
|
||||
efreet_init();
|
||||
|
||||
for (k = 0; k < LOOPS; k++)
|
||||
{
|
||||
Efreet_Menu *menu;
|
||||
menu = efreet_menu_get();
|
||||
efreet_menu_free(menu);
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
Makefile
|
||||
Makefile.in
|
|
@ -1,18 +0,0 @@
|
|||
SUBDIRS = sub
|
||||
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
testdir = $(pkgdatadir)/test
|
||||
test_DATA = \
|
||||
test.ini \
|
||||
long.ini \
|
||||
test.desktop \
|
||||
test_type.desktop \
|
||||
test.menu \
|
||||
test_menu_slash_bad.menu \
|
||||
entry.png \
|
||||
entry \
|
||||
preferences.menu \
|
||||
test_garbage
|
||||
|
||||
EXTRA_DIST = $(test_DATA)
|
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 648 B |
File diff suppressed because one or more lines are too long
|
@ -1,41 +0,0 @@
|
|||
<!DOCTYPE Menu PUBLIC
|
||||
"-//freedesktop//DTD Menu 1.0//EN"
|
||||
"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
|
||||
|
||||
<Menu>
|
||||
<Name>Preferences</Name>
|
||||
<Directory>Preferences.directory</Directory>
|
||||
|
||||
<AppDir>blah</AppDir>
|
||||
<AppDir>/var/tmp</AppDir>
|
||||
|
||||
<Move>
|
||||
<Old>Blah</Old
|
||||
<New>Borp</New>
|
||||
</Move>
|
||||
|
||||
<Menu>
|
||||
<Name>House</Name>
|
||||
<Directory>House.directory</Directory>
|
||||
<Include>
|
||||
<Category>House</Category>
|
||||
<Category>Garden</Category>
|
||||
</Include>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Mouse</Name>
|
||||
<Directory>House.directory</Directory>
|
||||
<Include>
|
||||
<Category>House</Category>
|
||||
<Category>Garden</Category>
|
||||
</Include>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>House</Name>
|
||||
<Directory>House.directory</Directory>
|
||||
<Include>
|
||||
<Category>Cat</Category>
|
||||
</Include>
|
||||
</Menu>
|
||||
</Menu>
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
Makefile
|
||||
Makefile.in
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
testdir = $(pkgdatadir)/test/sub
|
||||
test_DATA = \
|
||||
test.desktop
|
||||
|
||||
EXTRA_DIST = $(test_DATA)
|
|
@ -1,5 +0,0 @@
|
|||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=Sub
|
||||
Exec=subtest
|
||||
Categories=Test
|
|
@ -1,8 +0,0 @@
|
|||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=Efreet Test Application
|
||||
GenericName=Test Application
|
||||
Exec=efreet_test %F %i
|
||||
Categories=Test;Enlightenment;
|
||||
Icon=TestIcon
|
||||
X-Test=Own key
|
|
@ -1,21 +0,0 @@
|
|||
# Comments should be ignored (and empty lines)
|
||||
|
||||
[contact]
|
||||
Name=Foo Bar
|
||||
Name[en_US]=English Foo Bar
|
||||
Email= foo@bar.com
|
||||
Email[de_DE] = foo@bar.de
|
||||
Age = 30
|
||||
TrueBoolean=true
|
||||
FalseBoolean=false
|
||||
InvalidBoolean=invalid
|
||||
Escaped=line1\nline2\r\nline3\ttabbed \\ with a backslash\sand\sspaces
|
||||
|
||||
[AIM]
|
||||
Username=foobar
|
||||
|
||||
# the next line has a single space. it should be skipped as well
|
||||
|
||||
[Jabber]
|
||||
Username=foobar@bar.de
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
<!DOCTYPE Menu PUBLIC
|
||||
"-//freedesktop//DTD Menu 1.0//EN"
|
||||
"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
|
||||
|
||||
<Menu>
|
||||
<Name>Applications</Name>
|
||||
<Directory>Applications.directory</Directory>
|
||||
|
||||
<DefaultAppDirs/>
|
||||
<DefaultDirectoryDirs/>
|
||||
|
||||
<MergeDir>applications-merged</MergeDir>
|
||||
|
||||
<LegacyDir>/usr/share/applnk</LegacyDir>
|
||||
|
||||
<DefaultLayout>
|
||||
<Merge type="menus"/>
|
||||
<Merge type="files"/>
|
||||
<Separator/>
|
||||
<Menuname>More</Menuname>
|
||||
</DefaultLayout>
|
||||
|
||||
<Move>
|
||||
<Old>Foo</Old>
|
||||
<New>Bar</New>
|
||||
<Old>Foo2</Old>
|
||||
<New>Bar2</New>
|
||||
</Move>
|
||||
|
||||
<Menu>
|
||||
<Name>Preferences</Name>
|
||||
<Directory>Preferences.directory</Directory>
|
||||
<MergeFile>preferences.menu</MergeFile>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Office</Name>
|
||||
<Directory>Office.directory</Directory>
|
||||
<Include>
|
||||
<Category>Office</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Filename>foo.desktop</Filename>
|
||||
<And>
|
||||
<Not>
|
||||
<Filename>bar.desktop</Filename>
|
||||
</Not>
|
||||
</And>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
</Menu>
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -1,14 +0,0 @@
|
|||
<!DOCTYPE Menu PUBLIC
|
||||
"-//freedesktop//DTD Menu 1.0//EN"
|
||||
"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
|
||||
|
||||
<Menu>
|
||||
<Name>Applications</Name>
|
||||
<Directory>Applications.directory</Directory>
|
||||
|
||||
<!-- a comment
|
||||
<!-- with a comment -->
|
||||
<Or> This should be commented </Or>
|
||||
-->
|
||||
</Menu>
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE Menu PUBLIC
|
||||
"-//freedesktop//DTD Menu 1.0//EN"
|
||||
"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
|
||||
|
||||
<Menu>
|
||||
<Name>Applications/Bar</Name>
|
||||
|
||||
<Menu>
|
||||
<Name>Preferences/Baz</Name>
|
||||
</Menu>
|
||||
</Menu>
|
|
@ -1,8 +0,0 @@
|
|||
[Desktop Entry]
|
||||
Type=My_Type
|
||||
Name=Efreet Test Application
|
||||
GenericName=Test Application
|
||||
Exec=efreet_test %F %i
|
||||
Categories=Test;Enlightenment;
|
||||
Icon=TestIcon
|
||||
X-Test=Own key
|
|
@ -1,143 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include <stdio.h>
|
||||
#include <Ecore.h>
|
||||
#include "ef_test.h"
|
||||
|
||||
#if 0
|
||||
EAPI Efreet_Desktop *efreet_util_desktop_file_id_find(const char *file_id);
|
||||
|
||||
EAPI Eina_List *efreet_util_desktop_generic_name_glob_list(const char *glob);
|
||||
EAPI Eina_List *efreet_util_desktop_comment_glob_list(const char *glob);
|
||||
#endif
|
||||
|
||||
static void
|
||||
check(void)
|
||||
{
|
||||
Eina_List *list;
|
||||
Efreet_Desktop *desktop;
|
||||
double start;
|
||||
const char *id;
|
||||
|
||||
// EAPI char *efreet_util_path_to_file_id(const char *path);
|
||||
start = ecore_time_get();
|
||||
id = efreet_util_path_to_file_id("/usr/share/applications/gnome-panel.desktop");
|
||||
if (id)
|
||||
{
|
||||
printf("efreet_util_path_to_file_id(/usr/share/applications/gnome-panel.desktop): %s %.6f\n", id, (ecore_time_get() - start));
|
||||
}
|
||||
else
|
||||
printf("efreet_util_path_to_file_id(/usr/share/applications/gnome-panel.desktop): NULL %.6f\n", (ecore_time_get() - start));
|
||||
|
||||
//EAPI Efreet_Desktop *efreet_util_desktop_name_find(const char *name);
|
||||
start = ecore_time_get();
|
||||
desktop = efreet_util_desktop_name_find("Evolution");
|
||||
if (desktop)
|
||||
printf("efreet_util_desktop_name_find(Evolution): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
|
||||
else
|
||||
printf("efreet_util_desktop_name_find(Evolution): NULL %.6f\n", (ecore_time_get() - start));
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
//EAPI Efreet_Desktop *efreet_util_desktop_generic_name_find(const char *generic_name);
|
||||
start = ecore_time_get();
|
||||
desktop = efreet_util_desktop_generic_name_find("Spreadsheet");
|
||||
if (desktop)
|
||||
printf("efreet_util_desktop_generic_name_find(Spreadsheet): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
|
||||
else
|
||||
printf("efreet_util_desktop_generic_name_find(Spreadsheet): NULL %.6f\n", (ecore_time_get() - start));
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
//EAPI Efreet_Desktop *efreet_util_desktop_wm_class_find(const char *wmname, const char *wmclass);
|
||||
start = ecore_time_get();
|
||||
desktop = efreet_util_desktop_wm_class_find("Firefox", NULL);
|
||||
if (desktop)
|
||||
printf("efreet_util_desktop_wm_class_find(Firefox): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
|
||||
else
|
||||
printf("efreet_util_desktop_wm_class_find(Firefox): NULL %.6f\n", (ecore_time_get() - start));
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
//EAPI Efreet_Desktop *efreet_util_desktop_exec_find(const char *exec);
|
||||
start = ecore_time_get();
|
||||
desktop = efreet_util_desktop_exec_find("/usr/bin/update-manager");
|
||||
if (desktop)
|
||||
printf("efreet_util_desktop_exec_find(update-manager): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
|
||||
else
|
||||
printf("efreet_util_desktop_exec_find(update-manager): NULL %.6f\n", (ecore_time_get() - start));
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
//EAPI Eina_List *efreet_util_desktop_name_glob_list(const char *glob);
|
||||
start = ecore_time_get();
|
||||
list = efreet_util_desktop_name_glob_list("Ubuntu*");
|
||||
if (list)
|
||||
{
|
||||
EINA_LIST_FREE(list, desktop)
|
||||
{
|
||||
printf("efreet_util_desktop_name_glob_list(Ubuntu*): %s\n", desktop->name);
|
||||
efreet_desktop_free(desktop);
|
||||
}
|
||||
}
|
||||
printf("time: %.6f\n", (ecore_time_get() - start));
|
||||
|
||||
//EAPI Eina_List *efreet_util_desktop_mime_list(const char *mime);
|
||||
start = ecore_time_get();
|
||||
list = efreet_util_desktop_mime_list("application/ogg");
|
||||
if (list)
|
||||
{
|
||||
EINA_LIST_FREE(list, desktop)
|
||||
{
|
||||
printf("efreet_util_desktop_mime_list(application/ogg): %s\n", desktop->name);
|
||||
efreet_desktop_free(desktop);
|
||||
}
|
||||
}
|
||||
printf("time: %.6f\n", (ecore_time_get() - start));
|
||||
|
||||
//EAPI Eina_List *efreet_util_desktop_exec_glob_list(const char *glob);
|
||||
start = ecore_time_get();
|
||||
list = efreet_util_desktop_exec_glob_list("*gnome*");
|
||||
if (list)
|
||||
{
|
||||
EINA_LIST_FREE(list, desktop)
|
||||
{
|
||||
printf("efreet_util_desktop_exec_glob_list(*gnome*): %s\n", desktop->exec);
|
||||
efreet_desktop_free(desktop);
|
||||
}
|
||||
}
|
||||
printf("time: %.6f\n", (ecore_time_get() - start));
|
||||
|
||||
//EAPI Eina_List *efreet_util_desktop_categories_list(void);
|
||||
start = ecore_time_get();
|
||||
list = efreet_util_desktop_categories_list();
|
||||
if (list)
|
||||
{
|
||||
EINA_LIST_FREE(list, id)
|
||||
{
|
||||
printf("efreet_util_desktop_categories_list(): %s\n", id);
|
||||
}
|
||||
}
|
||||
printf("time: %.6f\n", (ecore_time_get() - start));
|
||||
|
||||
//EAPI Eina_List *efreet_util_desktop_category_list(const char *category);
|
||||
start = ecore_time_get();
|
||||
list = efreet_util_desktop_category_list("Graphics");
|
||||
if (list)
|
||||
{
|
||||
EINA_LIST_FREE(list, desktop)
|
||||
{
|
||||
printf("efreet_util_desktop_category_list(Graphics): %s\n", desktop->name);
|
||||
efreet_desktop_free(desktop);
|
||||
}
|
||||
}
|
||||
printf("time: %.6f\n", (ecore_time_get() - start));
|
||||
|
||||
desktop = efreet_desktop_get("/opt/google/chrome/google-chrome.desktop");
|
||||
if (desktop) efreet_desktop_free(desktop);
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc __UNUSED__, char **argv __UNUSED__)
|
||||
{
|
||||
if (!efreet_init()) return 1;
|
||||
check();
|
||||
ecore_main_loop_begin();
|
||||
efreet_shutdown();
|
||||
return 0;
|
||||
}
|
|
@ -1,307 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int
|
||||
ef_cb_efreet_data_home(void)
|
||||
{
|
||||
const char *tmp;
|
||||
int ret = 1;
|
||||
|
||||
efreet_shutdown();
|
||||
setenv("XDG_DATA_HOME", "/var/tmp", 1);
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_data_home_get();
|
||||
if (strcmp(tmp, "/var/tmp"))
|
||||
{
|
||||
printf("efreet_data_home_get() returned incorrect "
|
||||
"value (%s) on XDG_DATA_HOME=/var/tmp\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
/* reset efreet here so we can set a new home dir */
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_DATA_HOME");
|
||||
setenv("HOME", "/home/tmp", 1);
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_data_home_get();
|
||||
if (strcmp(tmp, "/home/tmp/.local/share"))
|
||||
{
|
||||
printf("efreet_data_home_get() returned incorrect "
|
||||
"value (%s) on blank XDG_DATA_HOME\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
/* reset efreet here so we can set a new home dir */
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_DATA_HOME");
|
||||
unsetenv("HOME");
|
||||
#ifdef _WIN32
|
||||
unsetenv("USERPROFILE");
|
||||
#endif
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_data_home_get();
|
||||
if (strcmp(tmp, "/tmp/.local/share"))
|
||||
{
|
||||
printf("efreet_data_home_get() returned incorrect "
|
||||
"value (%s) on blank XDG_DATA_HOME and blank HOME\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_efreet_config_home(void)
|
||||
{
|
||||
const char *tmp;
|
||||
int ret = 1;
|
||||
|
||||
efreet_shutdown();
|
||||
setenv("XDG_CONFIG_HOME", "/var/tmp", 1);
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_config_home_get();
|
||||
if (strcmp(tmp, "/var/tmp"))
|
||||
{
|
||||
printf("efreet_config_home_get() returned incorrect "
|
||||
"value (%s) on XDG_CONFIG_HOME=/var/tmp\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
/* reset efreet here so we can set a new home dir */
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_CONFIG_HOME");
|
||||
setenv("HOME", "/home/tmp", 1);
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_config_home_get();
|
||||
if (strcmp(tmp, "/home/tmp/.config"))
|
||||
{
|
||||
printf("efreet_config_home_get() returned incorrect "
|
||||
"value (%s) on blank XDG_CONFIG_HOME\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
/* reset efreet here so we can set a new home dir */
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_CONFIG_HOME");
|
||||
unsetenv("HOME");
|
||||
#ifdef _WIN32
|
||||
unsetenv("USERPROFILE");
|
||||
#endif
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_config_home_get();
|
||||
if (strcmp(tmp, "/tmp/.config"))
|
||||
{
|
||||
printf("efreet_config_home_get() returned incorrect "
|
||||
"value (%s) on blank XDG_CONFIG_HOME and blank HOME\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_efreet_cache_home(void)
|
||||
{
|
||||
const char *tmp;
|
||||
int ret = 1;
|
||||
|
||||
efreet_shutdown();
|
||||
setenv("XDG_CACHE_HOME", "/var/tmp", 1);
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_cache_home_get();
|
||||
if (strcmp(tmp, "/var/tmp"))
|
||||
{
|
||||
printf("efreet_cache_home_get() returned incorrect "
|
||||
"value (%s) on XDG_CACHE_HOME=/var/tmp\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
/* reset efreet here so we can set a new home dir */
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_CACHE_HOME");
|
||||
setenv("HOME", "/home/tmp", 1);
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_cache_home_get();
|
||||
if (strcmp(tmp, "/home/tmp/.cache"))
|
||||
{
|
||||
printf("efreet_cache_home_get() returned incorrect "
|
||||
"value (%s) on blank XDG_CACHE_HOME\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
/* reset efreet here so we can set a new home dir */
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_CACHE_HOME");
|
||||
unsetenv("HOME");
|
||||
#ifdef _WIN32
|
||||
unsetenv("USERPROFILE");
|
||||
#endif
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_cache_home_get();
|
||||
if (strcmp(tmp, "/tmp/.cache"))
|
||||
{
|
||||
printf("efreet_cache_home_get() returned incorrect "
|
||||
"value (%s) on blank XDG_CACHE_HOME and blank HOME\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_efreet_data_dirs(void)
|
||||
{
|
||||
Eina_List *tmp, *l;
|
||||
int ret = 1, i;
|
||||
char dirs[128], *val;
|
||||
char *vals[] = {"/var/tmp/a", "/tmp/b", "/usr/local/share", "/etc", NULL};
|
||||
char *def_vals[] = {PACKAGE_DATA_DIR, "/usr/share", "/usr/local/share", NULL};
|
||||
|
||||
dirs[0] = '\0';
|
||||
for (i = 0; vals[i]; i++)
|
||||
{
|
||||
if (i > 0) strcat(dirs, ":");
|
||||
strcat(dirs, vals[i]);
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
setenv("XDG_DATA_DIRS", dirs, 1);
|
||||
efreet_init();
|
||||
|
||||
i = 0;
|
||||
tmp = efreet_data_dirs_get();
|
||||
EINA_LIST_FOREACH(tmp, l, val)
|
||||
{
|
||||
if (!vals[i])
|
||||
{
|
||||
printf("efreet_data_dirs_get() returned more values then it "
|
||||
"should have given %s as input\n", dirs);
|
||||
ret = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (strcmp(val, vals[i]))
|
||||
{
|
||||
printf("efreet_data_dirs_get() returned incorrect value (%s) when "
|
||||
"%s set\n", val, dirs);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
i++;
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_DATA_DIRS");
|
||||
efreet_init();
|
||||
|
||||
i = 0;
|
||||
tmp = efreet_data_dirs_get();
|
||||
if (eina_list_count(tmp) != 3)
|
||||
{
|
||||
printf("efreet_data_dirs_get() nodes is differnet from expected default\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
EINA_LIST_FOREACH(tmp, l, val)
|
||||
{
|
||||
if (!def_vals[i])
|
||||
{
|
||||
printf("efreet_data_dirs_get() returned more values then it "
|
||||
"should have given %s as input\n", dirs);
|
||||
ret = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (strcmp(val, def_vals[i]))
|
||||
{
|
||||
printf("efreet_data_dirs_get() returned incorrect value (%s) when "
|
||||
"XDG_DATA_DIRS= is set %s\n", val, def_vals[i]);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
i++;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_efreet_config_dirs(void)
|
||||
{
|
||||
Eina_List *tmp, *l;
|
||||
int ret = 1, i;
|
||||
char dirs[128], *val;
|
||||
char *vals[] = {"/var/tmp/a", "/tmp/b", "/usr/local/share", "/etc", NULL};
|
||||
char *def_vals[] = {"/etc/xdg", NULL};
|
||||
|
||||
dirs[0] = '\0';
|
||||
|
||||
for (i = 0; vals[i]; i++)
|
||||
{
|
||||
if (i > 0) strcat(dirs, ":");
|
||||
strcat(dirs, vals[i]);
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
setenv("XDG_CONFIG_DIRS", dirs, 1);
|
||||
efreet_init();
|
||||
|
||||
i = 0;
|
||||
tmp = efreet_config_dirs_get();
|
||||
EINA_LIST_FOREACH(tmp, l, val)
|
||||
{
|
||||
if (!vals[i])
|
||||
{
|
||||
printf("efreet_config_dirs_get() returned more values then it "
|
||||
"should have given %s as input\n", dirs);
|
||||
ret = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (strcmp(val, vals[i]))
|
||||
{
|
||||
printf("efreet_config_dirs_get() returned incorrect value (%s) when "
|
||||
"%s set\n", val, dirs);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
i++;
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
unsetenv("XDG_CONFIG_DIRS");
|
||||
efreet_init();
|
||||
|
||||
i = 0;
|
||||
tmp = efreet_config_dirs_get();
|
||||
EINA_LIST_FOREACH(tmp, l, val)
|
||||
{
|
||||
if (!def_vals[i])
|
||||
{
|
||||
printf("efreet_config_dirs_get() returned more values then it "
|
||||
"should have given %s as input\n", dirs);
|
||||
ret = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (strcmp(val, def_vals[i]))
|
||||
{
|
||||
printf("efreet_config_dirs_get() returned incorrect value (%s) when "
|
||||
"XDG_CONFIG_DIRS= is set\n", val);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
i++;
|
||||
}
|
||||
return ret;
|
||||
}
|
|
@ -1,401 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include "config.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <limits.h>
|
||||
#include "ef_test.h"
|
||||
|
||||
static void *_cb_command(void *data, Efreet_Desktop *desktop, char *exec, int remaining);
|
||||
|
||||
|
||||
int
|
||||
ef_cb_desktop_parse(void)
|
||||
{
|
||||
Efreet_Desktop *desktop;
|
||||
Eina_List *l;
|
||||
int ret = 1;
|
||||
|
||||
desktop = efreet_desktop_get(PACKAGE_DATA_DIR"/test/test.desktop");
|
||||
if (!desktop)
|
||||
{
|
||||
printf("No desktop found.\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!desktop->name || strcmp(desktop->name, "Efreet Test Application"))
|
||||
{
|
||||
printf("Invalid Name\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
if (!desktop->generic_name ||
|
||||
strcmp(desktop->generic_name, "Test Application"))
|
||||
{
|
||||
printf("Incorrent GenericName\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
if (!desktop->exec || strcmp(desktop->exec, "efreet_test %F %i"))
|
||||
{
|
||||
printf("Incorrect Exec (%s)\n", (desktop->exec ? desktop->exec : "(null)"));
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
if (desktop->categories)
|
||||
{
|
||||
const char *categories[] = {"Test", "Enlightenment"};
|
||||
const char *cat;
|
||||
int num_categories = 2, i = 0;
|
||||
|
||||
EINA_LIST_FOREACH(desktop->categories, l, cat)
|
||||
{
|
||||
if (i >= num_categories)
|
||||
{
|
||||
printf("Too many categories found.\n");
|
||||
ret = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!cat || !categories[i] || strcmp(cat, categories[i]))
|
||||
{
|
||||
printf("Expected category %s, found %s\n", categories[i], cat);
|
||||
ret = 0;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
}
|
||||
else ret = 0;
|
||||
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if 0
|
||||
int
|
||||
ef_cb_desktop_file_id(void)
|
||||
{
|
||||
Efreet_Desktop *desktop;
|
||||
int ret = 1;
|
||||
|
||||
desktop = efreet_desktop_get(PACKAGE_DATA_DIR"/test/test.desktop");
|
||||
if (desktop)
|
||||
{
|
||||
const char *id;
|
||||
int i = 0;
|
||||
|
||||
struct {
|
||||
char *dir;
|
||||
int legacy;
|
||||
char *prefix;
|
||||
char *expected;
|
||||
} tests[] = {
|
||||
{PACKAGE_DATA_DIR"/test/", 0, NULL, "test.desktop"},
|
||||
{PACKAGE_DATA_DIR"/", 0, NULL, "test-test.desktop"},
|
||||
{PACKAGE_DATA_DIR"/", 1, NULL, "test.desktop"},
|
||||
{PACKAGE_DATA_DIR"/", 1, "prefix", "prefix-test.desktop"},
|
||||
{NULL, 0, NULL, NULL}
|
||||
};
|
||||
|
||||
for (i = 0; tests[i].dir != NULL; i++)
|
||||
{
|
||||
id = efreet_desktop_id_get(desktop,
|
||||
tests[i].dir,
|
||||
tests[i].legacy,
|
||||
tests[i].prefix);
|
||||
if (!id || strcmp(id, tests[i].expected))
|
||||
{
|
||||
printf("Expecting id: %s, got: %s\n", tests[i].expected, id);
|
||||
ret = 0;
|
||||
}
|
||||
if (id) eina_stringshare_del(id);
|
||||
}
|
||||
}
|
||||
else
|
||||
ret = 0;
|
||||
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
||||
int
|
||||
ef_cb_desktop_save(void)
|
||||
{
|
||||
Efreet_Desktop *desktop;
|
||||
|
||||
printf("\n");
|
||||
desktop = efreet_desktop_get(PACKAGE_DATA_DIR"/test/test.desktop");
|
||||
if (!desktop)
|
||||
{
|
||||
printf("Failed to get Desktop file\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
printf("save data: %d\n", efreet_desktop_save(desktop));
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
desktop = efreet_desktop_empty_new("/tmp/test.desktop");
|
||||
desktop->name = strdup("Efreet Test Application");
|
||||
desktop->type = EFREET_DESKTOP_TYPE_APPLICATION;
|
||||
desktop->generic_name = strdup("Test Application");
|
||||
desktop->exec = strdup("efreet_test");
|
||||
desktop->categories = NULL;
|
||||
desktop->categories = eina_list_append(desktop->categories, eina_stringshare_add("Test"));
|
||||
desktop->categories = eina_list_append(desktop->categories, eina_stringshare_add("Enlightenment"));
|
||||
printf("save test: %d\n", efreet_desktop_save(desktop));
|
||||
unlink("/tmp/test.desktop");
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
typedef struct
|
||||
{
|
||||
Eina_List *expected;
|
||||
int error;
|
||||
char type;
|
||||
} Test_Info;
|
||||
|
||||
int
|
||||
ef_cb_desktop_command_get(void)
|
||||
{
|
||||
Efreet_Desktop *desktop;
|
||||
Eina_List *files, *expected;
|
||||
char olddir[PATH_MAX];
|
||||
Test_Info *info;
|
||||
int ret;
|
||||
|
||||
if (getcwd(olddir, PATH_MAX) != 0) ret = 0;
|
||||
if (chdir("/") != 0) ret = 0;
|
||||
|
||||
printf("\n");
|
||||
desktop = efreet_desktop_empty_new("test.desktop");
|
||||
|
||||
desktop->name = strdup("App Name");
|
||||
desktop->icon = strdup("icon.png");
|
||||
|
||||
files = NULL;
|
||||
files = eina_list_append(files, "/tmp/absolute_path");
|
||||
files = eina_list_append(files, "relative_path");
|
||||
files = eina_list_append(files, "file:///tmp/absolute_uri");
|
||||
files = eina_list_append(files, "file:relative_uri");
|
||||
|
||||
info = NEW(Test_Info, 1);
|
||||
expected = NULL;
|
||||
info->error = 0;
|
||||
|
||||
/* test single full path */
|
||||
info->type = 'f';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %f");
|
||||
expected = eina_list_append(expected, "app '/tmp/absolute_path'");
|
||||
expected = eina_list_append(expected, "app '/relative_path'");
|
||||
expected = eina_list_append(expected, "app '/tmp/absolute_uri'");
|
||||
expected = eina_list_append(expected, "app '/relative_uri'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
|
||||
/* test single uri */
|
||||
info->type = 'u';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %u");
|
||||
expected = eina_list_append(expected, "app 'file:///tmp/absolute_path'");
|
||||
expected = eina_list_append(expected, "app 'file:///relative_path'");
|
||||
expected = eina_list_append(expected, "app 'file:///tmp/absolute_uri'");
|
||||
expected = eina_list_append(expected, "app 'file:///relative_uri'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
|
||||
/* test single dir */
|
||||
#if 0
|
||||
info->type = 'd';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %d");
|
||||
expected = eina_list_append(expected, "app '/tmp'");
|
||||
expected = eina_list_append(expected, "app '/'");
|
||||
expected = eina_list_append(expected, "app '/tmp'");
|
||||
expected = eina_list_append(expected, "app '/'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
#endif
|
||||
|
||||
|
||||
/* test single names */
|
||||
#if 0
|
||||
info->type = 'n';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %n");
|
||||
expected = eina_list_append(expected, "app 'absolute_path'");
|
||||
expected = eina_list_append(expected, "app 'relative_path'");
|
||||
expected = eina_list_append(expected, "app 'absolute_uri'");
|
||||
expected = eina_list_append(expected, "app 'relative_uri'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
#endif
|
||||
|
||||
/* test multiple fullpaths */
|
||||
info->type = 'F';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %F");
|
||||
expected = eina_list_append(expected, "app '/tmp/absolute_path' '/relative_path' '/tmp/absolute_uri' '/relative_uri'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
|
||||
/* test multiple URIs */
|
||||
info->type = 'U';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %U");
|
||||
expected = eina_list_append(expected, "app 'file:///tmp/absolute_path' 'file:///relative_path' 'file:///tmp/absolute_uri' 'file:///relative_uri'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
|
||||
/* test multiple dirs */
|
||||
#if 0
|
||||
info->type = 'D';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %D");
|
||||
expected = eina_list_append(expected, "app '/tmp' '/' '/tmp' '/'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
#endif
|
||||
|
||||
/* test multiple names */
|
||||
#if 0
|
||||
info->type = 'N';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %N");
|
||||
expected = eina_list_append(expected, "app 'absolute_path' 'relative_path' 'absolute_uri' 'relative_uri'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, files, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
#endif
|
||||
|
||||
/* test icon appending */
|
||||
info->type = 'i';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %i");
|
||||
expected = eina_list_append(expected, "app --icon 'icon.png'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, NULL, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
|
||||
/* test app name */
|
||||
info->type = 'c';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %c");
|
||||
expected = eina_list_append(expected, "app 'App Name'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, NULL, _cb_command, info);
|
||||
expected = eina_list_free(expected);
|
||||
|
||||
/* test desktop path */
|
||||
info->type = 'k';
|
||||
IF_FREE(desktop->exec);
|
||||
desktop->exec = strdup("app %k");
|
||||
expected = eina_list_append(expected, "app 'test.desktop'");
|
||||
|
||||
info->expected = expected;
|
||||
efreet_desktop_command_get(desktop, NULL, _cb_command, info);
|
||||
eina_list_free(expected);
|
||||
|
||||
/* clean up */
|
||||
efreet_desktop_free(desktop);
|
||||
eina_list_free(files);
|
||||
|
||||
if (chdir(olddir) != 0) ret = 0;
|
||||
|
||||
ret = info->error > 0 ? 0 : 1;
|
||||
free(info);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void *
|
||||
_cb_command(void *data, Efreet_Desktop *desktop __UNUSED__,
|
||||
char *exec, int remaining __UNUSED__)
|
||||
{
|
||||
Test_Info *info = data;
|
||||
char *expected;
|
||||
|
||||
expected = eina_list_data_get(info->expected);
|
||||
info->expected = eina_list_demote_list(info->expected, info->expected);
|
||||
if (!expected)
|
||||
{
|
||||
printf(" ERROR: (%%%c) got \"%s\", expected nothing\n", info->type, exec);
|
||||
info->error++;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (strcmp(exec, expected))
|
||||
{
|
||||
printf(" ERROR: (%%%c) got \"%s\", expected \"%s\"\n", info->type, exec, expected);
|
||||
info->error++;
|
||||
}
|
||||
}
|
||||
free(exec);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void *
|
||||
cb_type_parse(Efreet_Desktop *desktop __UNUSED__, Efreet_Ini *ini)
|
||||
{
|
||||
const char *val;
|
||||
val = efreet_ini_string_get(ini, "X-Test");
|
||||
if (!val) return NULL;
|
||||
return (void *)strdup(val);
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_desktop_type_parse(void)
|
||||
{
|
||||
Efreet_Desktop *desktop;
|
||||
int my_type;
|
||||
char *val;
|
||||
int ret = 1;
|
||||
|
||||
/* add my custom desktop type to efreet */
|
||||
my_type = efreet_desktop_type_add("My_Type", cb_type_parse, NULL,
|
||||
(Efreet_Desktop_Type_Free_Cb)free);
|
||||
|
||||
desktop = efreet_desktop_get(PACKAGE_DATA_DIR"/test/test_type.desktop");
|
||||
if (!desktop)
|
||||
{
|
||||
printf("No desktop found.\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (desktop->type != my_type)
|
||||
{
|
||||
printf("Invalid type returned in desktop");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
val = (char *)efreet_desktop_type_data_get(desktop);
|
||||
if (!val || strcmp(val, "Own key"))
|
||||
{
|
||||
printf("Invalid value of custom key (%s).\n", val);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
efreet_desktop_free(desktop);
|
||||
return ret;
|
||||
}
|
|
@ -1,605 +0,0 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include "Efreet.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <limits.h>
|
||||
#include <Ecore.h>
|
||||
#include <Ecore_File.h>
|
||||
|
||||
#define SIZE 128
|
||||
#define THEME "Tango"
|
||||
#define FREE(x) do { free(x); x = NULL; } while (0);
|
||||
|
||||
static Eina_Bool _hash_keys(Eina_Hash *hash, const char *key, void *list);
|
||||
static void ef_icon_theme_themes_find(const char *search_dir,
|
||||
Eina_Hash *themes);
|
||||
static void ef_icons_find(Efreet_Icon_Theme *theme, Eina_Hash *icons);
|
||||
static void ef_read_dir(const char *dir, Eina_Hash *icons);
|
||||
|
||||
int
|
||||
ef_cb_efreet_icon_theme(void)
|
||||
{
|
||||
int ret = 1;
|
||||
const char *tmp;
|
||||
|
||||
unsetenv("XDG_DATA_HOME");
|
||||
efreet_shutdown();
|
||||
putenv("HOME=/var/tmp");
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_icon_user_dir_get();
|
||||
if (strcmp(tmp, "/var/tmp/.local/share/icons"))
|
||||
{
|
||||
printf("efreet_icon_user_dir_get() returned incorrect "
|
||||
"value (%s) on HOME=/var/tmp\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
unsetenv("HOME");
|
||||
#ifdef _WIN32
|
||||
unsetenv("USERPROFILE");
|
||||
#endif
|
||||
efreet_init();
|
||||
|
||||
tmp = efreet_icon_user_dir_get();
|
||||
if (strcmp(tmp, "/tmp/.local/share/icons"))
|
||||
{
|
||||
printf("efreet_icon_user_dir_get() returned incorrect "
|
||||
"value (%s) on HOME=\n", tmp);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_hash_keys(Eina_Hash *hash __UNUSED__, const char *key, void *list)
|
||||
{
|
||||
Eina_List **l = list;
|
||||
|
||||
*l = eina_list_append(*l, key);
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_efreet_icon_theme_list(void)
|
||||
{
|
||||
int ret = 1;
|
||||
Eina_List *themes;
|
||||
Eina_List *icon_dirs;
|
||||
Eina_List *l;
|
||||
Eina_Hash *dirs;
|
||||
Eina_Iterator *it;
|
||||
Efreet_Icon_Theme *theme;
|
||||
const char *dir;
|
||||
char buf[PATH_MAX];
|
||||
|
||||
dirs = eina_hash_string_superfast_new(free);
|
||||
|
||||
icon_dirs = efreet_data_dirs_get();
|
||||
|
||||
ef_icon_theme_themes_find(efreet_icon_user_dir_get(), dirs);
|
||||
EINA_LIST_FOREACH(icon_dirs, l, dir)
|
||||
{
|
||||
snprintf(buf, sizeof(buf), "%s/icons", dir);
|
||||
ef_icon_theme_themes_find(buf, dirs);
|
||||
}
|
||||
EINA_LIST_FOREACH(icon_dirs, l, dir)
|
||||
{
|
||||
snprintf(buf, sizeof(buf), "%s/pixmaps", dir);
|
||||
ef_icon_theme_themes_find(buf, dirs);
|
||||
}
|
||||
ef_icon_theme_themes_find("/usr/share/pixmaps", dirs);
|
||||
|
||||
themes = efreet_icon_theme_list_get();
|
||||
EINA_LIST_FOREACH(themes, l, theme)
|
||||
{
|
||||
if ((eina_hash_find(dirs, theme->name.internal)))
|
||||
eina_hash_del(dirs, theme->name.internal, NULL);
|
||||
else
|
||||
{
|
||||
printf("efreet_icon_theme_list_get() returned %s which we didn't "
|
||||
"see when scanning the directories.\n", theme->name.internal);
|
||||
ret = 0;
|
||||
}
|
||||
}
|
||||
while (themes)
|
||||
{
|
||||
themes = eina_list_remove_list(themes, themes);
|
||||
}
|
||||
|
||||
themes = NULL;
|
||||
it = eina_hash_iterator_key_new(dirs);
|
||||
eina_iterator_foreach(it, EINA_EACH_CB(_hash_keys), &themes);
|
||||
eina_iterator_free(it);
|
||||
|
||||
if (eina_list_count(themes) > 0)
|
||||
{
|
||||
printf("efreet_icon_theme_list_get() missed: ");
|
||||
EINA_LIST_FOREACH(themes, l, dir)
|
||||
printf("%s ", dir);
|
||||
printf("\n");
|
||||
|
||||
ret = 0;
|
||||
}
|
||||
while (themes)
|
||||
{
|
||||
themes = eina_list_remove_list(themes, themes);
|
||||
}
|
||||
eina_hash_free(dirs);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
ef_icon_theme_themes_find(const char *search_dir, Eina_Hash *themes)
|
||||
{
|
||||
Eina_List *dirs;
|
||||
char *dir;
|
||||
|
||||
if (!search_dir || !themes) return;
|
||||
|
||||
dirs = ecore_file_ls(search_dir);
|
||||
if (!dirs) return;
|
||||
|
||||
while ((dir = eina_list_data_get(dirs)))
|
||||
{
|
||||
char p[PATH_MAX];
|
||||
|
||||
dirs = eina_list_remove_list(dirs, dirs);
|
||||
/* if we've already added the theme we're done */
|
||||
if (eina_hash_find(themes, dir))
|
||||
{
|
||||
free(dir);
|
||||
continue;
|
||||
}
|
||||
|
||||
/* if the index.theme file exists we open it and look for the hidden
|
||||
* flag. */
|
||||
snprintf(p, sizeof(p), "%s/%s/index.theme", search_dir, dir);
|
||||
if (ecore_file_exists(p))
|
||||
{
|
||||
Efreet_Ini *ini;
|
||||
char *d;
|
||||
int skip = 0;
|
||||
|
||||
ini = efreet_ini_new(p);
|
||||
efreet_ini_section_set(ini, "Icon Theme");
|
||||
|
||||
if (efreet_ini_boolean_get(ini, "Hidden")) skip = 1;
|
||||
if (!efreet_ini_localestring_get(ini, "Name")) skip = 1;
|
||||
efreet_ini_free(ini);
|
||||
|
||||
if (!skip)
|
||||
{
|
||||
d = strdup(dir);
|
||||
eina_hash_add(themes, dir, d);
|
||||
}
|
||||
}
|
||||
free(dir);
|
||||
}
|
||||
}
|
||||
|
||||
const char *system_icons[] =
|
||||
{
|
||||
"address-book-new",
|
||||
"application-exit",
|
||||
"appointment-new",
|
||||
"contact-new",
|
||||
"dialog-apply",
|
||||
"dialog-cancel",
|
||||
"dialog-close",
|
||||
"dialog-ok",
|
||||
"document-new",
|
||||
"document-open",
|
||||
"document-open-recent",
|
||||
"document-page-setup",
|
||||
"document-print",
|
||||
"document-print-preview",
|
||||
"document-properties",
|
||||
"document-revert",
|
||||
"document-save",
|
||||
"document-save-as",
|
||||
"edit-copy",
|
||||
"edit-cut",
|
||||
"edit-delete",
|
||||
"edit-find",
|
||||
"edit-find-replace",
|
||||
"edit-paste",
|
||||
"edit-redo",
|
||||
"edit-select-all",
|
||||
"edit-undo",
|
||||
"format-indent-less",
|
||||
"format-indent-more",
|
||||
"format-justify-center",
|
||||
"format-justify-fill",
|
||||
"format-justify-left",
|
||||
"format-justify-right",
|
||||
"format-text-direction-ltr",
|
||||
"format-text-direction-rtl",
|
||||
"format-text-bold",
|
||||
"format-text-italic",
|
||||
"format-text-underline",
|
||||
"format-text-strikethrough",
|
||||
"go-bottom",
|
||||
"go-down",
|
||||
"go-first",
|
||||
"go-home",
|
||||
"go-jump",
|
||||
"go-last",
|
||||
"go-next",
|
||||
"go-previous",
|
||||
"go-top",
|
||||
"go-up",
|
||||
"help-about",
|
||||
"help-contents",
|
||||
"help-faq",
|
||||
"insert-image",
|
||||
"insert-link",
|
||||
"insert-object",
|
||||
"insert-text",
|
||||
"list-add",
|
||||
"list-remove",
|
||||
"mail-forward",
|
||||
"mail-mark-important",
|
||||
"mail-mark-junk",
|
||||
"mail-mark-notjunk",
|
||||
"mail-mark-read",
|
||||
"mail-mark-unread",
|
||||
"mail-message-new",
|
||||
"mail-reply-all",
|
||||
"mail-reply-sender",
|
||||
"mail-send-receive",
|
||||
"media-eject",
|
||||
"media-playback-pause",
|
||||
"media-playback-start",
|
||||
"media-playback-stop",
|
||||
"media-record",
|
||||
"media-seek-backward",
|
||||
"media-seek-forward",
|
||||
"media-skip-backward",
|
||||
"media-skip-forward",
|
||||
"system-lock-screen",
|
||||
"system-log-out",
|
||||
"system-run",
|
||||
"system-search",
|
||||
"system-search",
|
||||
"tools-check-spelling",
|
||||
"view-fullscreen",
|
||||
"view-refresh",
|
||||
"view-sort-ascending",
|
||||
"view-sort-descending",
|
||||
"window-close",
|
||||
"window-new",
|
||||
"zoom-best-fit",
|
||||
"zoom-in",
|
||||
"zoom-original",
|
||||
"zoom-out",
|
||||
"process-working",
|
||||
"accessories-calculator",
|
||||
"accessories-character-map",
|
||||
"accessories-dictionary",
|
||||
"accessories-text-editor",
|
||||
"help-browser",
|
||||
"multimedia-volume-control",
|
||||
#if 0
|
||||
"preferences-desktop-accessibility",
|
||||
"preferences-desktop-font",
|
||||
"preferences-desktop-keyboard",
|
||||
"preferences-desktop-locale",
|
||||
"preferences-desktop-multimedia",
|
||||
"preferences-desktop-screensaver",
|
||||
"preferences-desktop-theme",
|
||||
"preferences-desktop-wallpaper",
|
||||
"system-file-manager",
|
||||
"system-software-update",
|
||||
"utilities-terminal",
|
||||
"applications-accessories",
|
||||
"applications-development",
|
||||
"applications-games",
|
||||
"applications-graphics",
|
||||
"applications-internet",
|
||||
"applications-multimedia",
|
||||
"applications-office",
|
||||
"applications-other",
|
||||
"applications-system",
|
||||
"applications-utilities",
|
||||
"preferences-desktop",
|
||||
"preferences-desktop-accessibility",
|
||||
"preferences-desktop-peripherals",
|
||||
"preferences-desktop-personal",
|
||||
"preferences-other",
|
||||
"preferences-system",
|
||||
"preferences-system-network",
|
||||
"system-help",
|
||||
"audio-card",
|
||||
"audio-input-microphone",
|
||||
"battery",
|
||||
"camera-photo",
|
||||
"camera-video",
|
||||
"computer",
|
||||
"drive-cdrom",
|
||||
"drive-harddisk",
|
||||
"drive-removable-media",
|
||||
"input-gaming",
|
||||
"input-keyboard",
|
||||
"input-mouse",
|
||||
"media-cdrom",
|
||||
"media-floppy",
|
||||
"multimedia-player",
|
||||
"multimedia-player",
|
||||
"network-wired",
|
||||
"network-wireless",
|
||||
"printer",
|
||||
"emblem-default",
|
||||
"emblem-documents",
|
||||
"emblem-downloads",
|
||||
"emblem-favorite",
|
||||
"emblem-important",
|
||||
"emblem-mail",
|
||||
"emblem-photos",
|
||||
"emblem-readonly",
|
||||
"emblem-shared",
|
||||
"emblem-symbolic-link",
|
||||
"emblem-synchronized",
|
||||
"emblem-system",
|
||||
"emblem-unreadable",
|
||||
"face-angel",
|
||||
"face-crying",
|
||||
"face-devil-grin",
|
||||
"face-devil-sad",
|
||||
"face-glasses",
|
||||
"face-kiss",
|
||||
"face-monkey",
|
||||
"face-plain",
|
||||
"face-sad",
|
||||
"face-smile",
|
||||
"face-smile-big",
|
||||
"face-smirk",
|
||||
"face-surprise",
|
||||
"face-wink",
|
||||
"application-x-executable",
|
||||
"audio-x-generic",
|
||||
"font-x-generic",
|
||||
"image-x-generic",
|
||||
"package-x-generic",
|
||||
"text-html",
|
||||
"text-x-generic",
|
||||
"text-x-generic-template",
|
||||
"text-x-script",
|
||||
"video-x-generic",
|
||||
"x-office-address-book",
|
||||
"x-office-calendar",
|
||||
"x-office-document",
|
||||
"x-office-presentation",
|
||||
"x-office-spreadsheet",
|
||||
"folder",
|
||||
"folder-remote",
|
||||
"network-server",
|
||||
"network-workgroup",
|
||||
"start-here",
|
||||
"user-desktop",
|
||||
"user-home",
|
||||
"user-trash",
|
||||
"appointment-missed",
|
||||
"appointment-soon",
|
||||
"audio-volume-high",
|
||||
"audio-volume-low",
|
||||
"audio-volume-medium",
|
||||
"audio-volume-muted",
|
||||
"battery-caution",
|
||||
"battery-low",
|
||||
"dialog-error",
|
||||
"dialog-information",
|
||||
"dialog-password",
|
||||
"dialog-question",
|
||||
"dialog-warning",
|
||||
"folder-drag-accept",
|
||||
"folder-open",
|
||||
"folder-visiting",
|
||||
"image-loading",
|
||||
"image-missing",
|
||||
"mail-attachment",
|
||||
"mail-unread",
|
||||
"mail-read",
|
||||
"mail-replied",
|
||||
"mail-signed",
|
||||
"mail-signed-verified",
|
||||
"media-playlist-repeat",
|
||||
"media-playlist-shuffle",
|
||||
"network-error",
|
||||
"network-idle",
|
||||
"network-offline",
|
||||
"network-receive",
|
||||
"network-transmit",
|
||||
"network-transmit-receive",
|
||||
"printer-error",
|
||||
"printer-printing",
|
||||
"software-update-available",
|
||||
"software-update-urgent",
|
||||
"sync-error",
|
||||
"sync-synchronizing",
|
||||
"task-due",
|
||||
"task-passed-due",
|
||||
"user-away",
|
||||
"user-idle",
|
||||
"user-offline",
|
||||
"user-online",
|
||||
"user-trash-full",
|
||||
"weather-clear",
|
||||
"weather-clear-night",
|
||||
"weather-few-clouds",
|
||||
"weather-few-clouds-night",
|
||||
"weather-fog",
|
||||
"weather-overcast",
|
||||
"weather-severe-alert",
|
||||
"weather-showers",
|
||||
"weather-showers-scattered",
|
||||
"weather-snow",
|
||||
"weather-storm",
|
||||
#endif
|
||||
NULL
|
||||
};
|
||||
|
||||
int
|
||||
ef_cb_efreet_icon_match(void)
|
||||
{
|
||||
int i, ret = 1;
|
||||
Eina_Hash *icon_hash;
|
||||
Efreet_Icon_Theme *theme;
|
||||
|
||||
theme = efreet_icon_theme_find(THEME);
|
||||
icon_hash = eina_hash_string_superfast_new(free);
|
||||
|
||||
ef_icons_find(theme, icon_hash);
|
||||
|
||||
double start = ecore_time_get();
|
||||
for (i = 0; system_icons[i]; i++)
|
||||
{
|
||||
const char *path;
|
||||
char *p, *s;
|
||||
|
||||
path = efreet_icon_path_find(THEME, system_icons[i], SIZE);
|
||||
|
||||
if (!path)
|
||||
{
|
||||
#if 1
|
||||
if (eina_hash_find(icon_hash, system_icons[i]))
|
||||
{
|
||||
printf("NOT FOUND %s\n", system_icons[i]);
|
||||
ret = 0;
|
||||
}
|
||||
#endif
|
||||
continue;
|
||||
}
|
||||
else if (!eina_hash_find(icon_hash, system_icons[i]))
|
||||
{
|
||||
printf("Found icon not in hash: %s\n", system_icons[i]);
|
||||
}
|
||||
|
||||
p = strdup(path);
|
||||
s = strrchr(p, '.');
|
||||
if (s) *s = '\0';
|
||||
s = strrchr(p, '/');
|
||||
if (s) s++;
|
||||
|
||||
if (s && strcmp(s, system_icons[i]))
|
||||
{
|
||||
printf("Name mismatch name (%s) vs ef (%s)\n", system_icons[i], s);
|
||||
ret = 0;
|
||||
}
|
||||
free(p);
|
||||
}
|
||||
printf("Time: %f\n", (ecore_time_get() - start));
|
||||
eina_hash_free(icon_hash);
|
||||
|
||||
start = ecore_time_get();
|
||||
for (i = 0; system_icons[i]; i++)
|
||||
{
|
||||
const char *path;
|
||||
char *p, *s;
|
||||
|
||||
path = efreet_icon_path_find(THEME, system_icons[i], SIZE);
|
||||
|
||||
if (!path) continue;
|
||||
p = strdup(path);
|
||||
|
||||
s = strrchr(p, '.');
|
||||
if (s) *s = '\0';
|
||||
s = strrchr(p, '/');
|
||||
if (s) s++;
|
||||
|
||||
if (s && strcmp(s, system_icons[i]))
|
||||
{
|
||||
printf("Name mismatch name (%s) vs ef (%s)\n", system_icons[i], s);
|
||||
ret = 0;
|
||||
}
|
||||
free(p);
|
||||
}
|
||||
printf("Time: %f\n", (ecore_time_get() - start));
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
ef_icons_find(Efreet_Icon_Theme *theme, Eina_Hash *icons)
|
||||
{
|
||||
Eina_List *l, *ll;
|
||||
char path[PATH_MAX];
|
||||
const char *theme_path;
|
||||
|
||||
if (!theme || !icons) return;
|
||||
|
||||
EINA_LIST_FOREACH(theme->paths, l, theme_path)
|
||||
{
|
||||
Efreet_Icon_Theme_Directory *dir;
|
||||
|
||||
EINA_LIST_FOREACH(theme->directories, ll, dir)
|
||||
{
|
||||
snprintf(path, sizeof(path), "%s/%s/", theme_path, dir->name);
|
||||
ef_read_dir(path, icons);
|
||||
}
|
||||
}
|
||||
|
||||
if (theme->inherits)
|
||||
{
|
||||
Efreet_Icon_Theme *parent_theme;
|
||||
char *parent;
|
||||
|
||||
EINA_LIST_FOREACH(theme->inherits, l, parent)
|
||||
{
|
||||
parent_theme = efreet_icon_theme_find(parent);
|
||||
if (parent_theme)
|
||||
ef_icons_find(parent_theme, icons);
|
||||
}
|
||||
}
|
||||
else if (theme->valid && strcmp(theme->name.internal, "hicolor"))
|
||||
{
|
||||
Efreet_Icon_Theme *parent_theme;
|
||||
|
||||
parent_theme = efreet_icon_theme_find("hicolor");
|
||||
if (parent_theme)
|
||||
ef_icons_find(parent_theme, icons);
|
||||
}
|
||||
|
||||
ef_read_dir("/usr/share/pixmaps", icons);
|
||||
}
|
||||
|
||||
static void
|
||||
ef_read_dir(const char *dir, Eina_Hash *icons)
|
||||
{
|
||||
Eina_List *files;
|
||||
char *file;
|
||||
|
||||
if (!dir || !icons) return;
|
||||
|
||||
files = ecore_file_ls(dir);
|
||||
if (!files) return;
|
||||
|
||||
while ((file = eina_list_data_get(files)))
|
||||
{
|
||||
char *p;
|
||||
|
||||
files = eina_list_remove_list(files, files);
|
||||
p = strrchr(file, '.');
|
||||
if (!p)
|
||||
{
|
||||
FREE(file);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!strcmp(p, ".png") || !strcmp(p, ".xpm"))
|
||||
{
|
||||
*p = '\0';
|
||||
|
||||
eina_hash_add(icons, file, strdup(file));
|
||||
}
|
||||
|
||||
FREE(file);
|
||||
}
|
||||
}
|
|
@ -1,174 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include "config.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int
|
||||
ef_cb_ini_parse(void)
|
||||
{
|
||||
int ret = 1;
|
||||
Efreet_Ini *ini;
|
||||
|
||||
putenv("LC_ALL=en_US");
|
||||
|
||||
ini = efreet_ini_new(PACKAGE_DATA_DIR"/test/test.ini");
|
||||
if (!ini)
|
||||
{
|
||||
printf("efreet_ini_parse() Failed to initialize Efreet_Ini\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (efreet_ini_section_set(ini, "contact"))
|
||||
{
|
||||
const char *val;
|
||||
int ival;
|
||||
unsigned int bval;
|
||||
|
||||
val = efreet_ini_string_get(ini, "Name");
|
||||
if (!val || strcmp(val, "Foo Bar"))
|
||||
{
|
||||
printf("efreet_ini_string_get() Name parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
val = efreet_ini_localestring_get(ini, "Name");
|
||||
if (!val || strcmp(val, "English Foo Bar"))
|
||||
{
|
||||
printf("efreet_ini_localestring_get() Name parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
val = efreet_ini_string_get(ini, "Email");
|
||||
if (!val || strcmp(val, "foo@bar.com"))
|
||||
{
|
||||
printf("efreet_ini_string_get() Email parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
val = efreet_ini_localestring_get(ini, "Email");
|
||||
if (!val || strcmp(val, "foo@bar.com"))
|
||||
{
|
||||
printf("efreet_ini_localestring_get() Email parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
ival = efreet_ini_int_get(ini, "Age");
|
||||
if (ival != 30)
|
||||
{
|
||||
printf("efreet_ini_int_get() Age parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
bval = efreet_ini_boolean_get(ini, "TrueBoolean");
|
||||
if (!bval)
|
||||
{
|
||||
printf("efreet_ini_boolean_get() TrueBoolean parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
bval = efreet_ini_boolean_get(ini, "FalseBoolean");
|
||||
if (bval)
|
||||
{
|
||||
printf("efreet_ini_boolean_get() FalseBoolean parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
bval = efreet_ini_boolean_get(ini, "InvalidBoolean");
|
||||
if (bval)
|
||||
{
|
||||
printf("efreet_ini_boolean_get() InvalidBoolean parsed incorrectly\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
val = efreet_ini_string_get(ini, "Escaped");
|
||||
if (!val || strcmp(val, "line1\nline2\r\nline3\ttabbed \\ with a backslash and spaces"))
|
||||
{
|
||||
printf("efreet_ini_unescape() improperly unescaped value\n");
|
||||
ret = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("efreet_ini_section_set() Failed to set 'contact' section\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
efreet_ini_free(ini);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_ini_long_line(void)
|
||||
{
|
||||
Efreet_Ini *ini;
|
||||
int ret = 1;
|
||||
|
||||
struct
|
||||
{
|
||||
char *key;
|
||||
int len;
|
||||
} tests[] = {
|
||||
{"key", 5099},
|
||||
{"key2", 5099},
|
||||
{NULL, 0}
|
||||
};
|
||||
|
||||
ini = efreet_ini_new(PACKAGE_DATA_DIR"/test/long.ini");
|
||||
if (!ini)
|
||||
{
|
||||
printf("Ini failed to parse.\n");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
if (ret) ret = efreet_ini_section_set(ini, "section");
|
||||
if (ret)
|
||||
{
|
||||
const char *val;
|
||||
int i, len;
|
||||
|
||||
for (i = 0; tests[i].key; i++)
|
||||
{
|
||||
val = efreet_ini_string_get(ini, tests[i].key);
|
||||
if (val)
|
||||
{
|
||||
len = strlen(val);
|
||||
if (len != tests[i].len)
|
||||
{
|
||||
printf("Invalid long line parsing. Value length: %d (expected %d)\n", len, tests[i].len);
|
||||
ret = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("Key missing: %s.", tests[i].key);
|
||||
ret = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("Section missing: 'section'.");
|
||||
}
|
||||
|
||||
if (ini) efreet_ini_free(ini);
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_ini_garbage(void)
|
||||
{
|
||||
Efreet_Ini *ini;
|
||||
int ret = 1;
|
||||
|
||||
ini = efreet_ini_new(PACKAGE_DATA_DIR"/test/test_garbage");
|
||||
if (!ini)
|
||||
{
|
||||
printf("Ini failed to parse.\n");
|
||||
return 0;
|
||||
}
|
||||
if (ini->data) ret = 0;
|
||||
efreet_ini_free(ini);
|
||||
return ret;
|
||||
}
|
|
@ -1,85 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include "efreet_private.h"
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
int
|
||||
ef_cb_locale(void)
|
||||
{
|
||||
int ret = 1, i;
|
||||
struct
|
||||
{
|
||||
char *lc_message;
|
||||
char *lang;
|
||||
char *country;
|
||||
char *modifier;
|
||||
} langs[] = {
|
||||
/* these are ordered such that when we move from LANG to LC_MESSAGES
|
||||
* the LANG env will still be effect. Same with moving from
|
||||
* LC_MESSAGES to LANG */
|
||||
{"LANG=", NULL, NULL, NULL},
|
||||
{"LANG=en", "en", NULL, NULL},
|
||||
{"LANG=en@Latn", "en", NULL, "Latn"},
|
||||
{"LANG=en_US", "en", "US", NULL},
|
||||
{"LANG=en_US@Latn", "en", "US", "Latn"},
|
||||
{"LANG=en_US.blah@Latn", "en", "US", "Latn"},
|
||||
{"LC_MESSAGES=", "en", "US", "Latn"}, /* This will fallback to LANG */
|
||||
{"LC_MESSAGES=fr", "fr", NULL, NULL},
|
||||
{"LC_MESSAGES=fr@Blah", "fr", NULL, "Blah"},
|
||||
{"LC_MESSAGES=fr_FR", "fr", "FR", NULL},
|
||||
{"LC_MESSAGES=fr_FR@Blah", "fr", "FR", "Blah"},
|
||||
{"LC_MESSAGES=fr_FR.Foo@Blah", "fr", "FR", "Blah"},
|
||||
{"LC_ALL=", "fr", "FR", "Blah"}, /* this will fallback to LC_MESSAGES */
|
||||
{"LC_ALL=sr", "sr", NULL, NULL},
|
||||
{"LC_ALL=sr@Ret", "sr", NULL, "Ret"},
|
||||
{"LC_ALL=sr_YU", "sr", "YU", NULL},
|
||||
{"LC_ALL=sr_YU@Ret", "sr", "YU", "Ret"},
|
||||
{"LC_ALL=sr_YU.ssh@Ret", "sr", "YU", "Ret"},
|
||||
{NULL, NULL, NULL, NULL}
|
||||
};
|
||||
|
||||
/* reset everything to blank */
|
||||
putenv("LC_ALL=");
|
||||
putenv("LC_MESSAGES=");
|
||||
putenv("LANG=");
|
||||
|
||||
for (i = 0; langs[i].lc_message; i++)
|
||||
{
|
||||
const char *tmp;
|
||||
|
||||
putenv(langs[i].lc_message);
|
||||
|
||||
tmp = efreet_lang_get();
|
||||
if ((langs[i].lang && (!tmp || strcmp(tmp, langs[i].lang)))
|
||||
|| (!langs[i].lang && tmp))
|
||||
{
|
||||
printf("efreet_lang_get() is wrong (%s) with %s\n",
|
||||
tmp, langs[i].lang);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
tmp = efreet_lang_country_get();
|
||||
if ((langs[i].country && (!tmp || strcmp(tmp, langs[i].country)))
|
||||
|| (!langs[i].country && tmp))
|
||||
{
|
||||
printf("efreet_lang_country_get() is wrong (%s) with %s\n",
|
||||
tmp, langs[i].lang);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
tmp = efreet_lang_modifier_get();
|
||||
if ((langs[i].modifier && (!tmp || strcmp(tmp, langs[i].modifier)))
|
||||
|| (!langs[i].modifier && tmp))
|
||||
{
|
||||
printf("efreet_lang_modifier_get() is wrong with %s with %s\n",
|
||||
tmp, langs[i].lang);
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
efreet_shutdown();
|
||||
efreet_init();
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
|
@ -1,150 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include "config.h"
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#if 0
|
||||
static void
|
||||
ef_menu_desktop_exec(Efreet_Menu *menu)
|
||||
{
|
||||
Eina_List *l;
|
||||
|
||||
if (menu->entries)
|
||||
{
|
||||
Efreet_Desktop *desktop;
|
||||
|
||||
EINA_LIST_FOREACH(menu->entries, l, desktop)
|
||||
efreet_desktop_exec(desktop, NULL);
|
||||
}
|
||||
if (menu->sub_menus)
|
||||
{
|
||||
Efreet_Menu *sub_menu;
|
||||
|
||||
EINA_LIST_FOREACH(menu->sub_menus, l, sub_menu)
|
||||
ef_menu_desktop_exec(sub_menu);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
int
|
||||
ef_cb_menu_get(void)
|
||||
{
|
||||
Efreet_Menu *menu;
|
||||
|
||||
menu = efreet_menu_get();
|
||||
// menu = efreet_menu_parse(PACKAGE_DATA_DIR"/test/test.menu");
|
||||
if (!menu)
|
||||
{
|
||||
printf("efreet_menu_get() returned NULL\n");
|
||||
return 0;
|
||||
}
|
||||
printf("\n");
|
||||
efreet_menu_dump(menu, "");
|
||||
efreet_menu_free(menu);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_menu_with_slashes(void)
|
||||
{
|
||||
Efreet_Menu *menu;
|
||||
|
||||
menu = efreet_menu_parse(PACKAGE_DATA_DIR"/test/test_menu_slash_bad.menu");
|
||||
if (menu)
|
||||
{
|
||||
printf("efreet_menu_get() didn't return NULL\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_menu_save(void)
|
||||
{
|
||||
Efreet_Menu *menu;
|
||||
int ret;
|
||||
|
||||
// menu = efreet_menu_get();
|
||||
menu = efreet_menu_parse(PACKAGE_DATA_DIR"/test/test.menu");
|
||||
if (!menu)
|
||||
{
|
||||
printf("efreet_menu_get() returned NULL\n");
|
||||
return 0;
|
||||
}
|
||||
unlink("/tmp/test.menu");
|
||||
ret = efreet_menu_save(menu, "/tmp/test.menu");
|
||||
efreet_menu_free(menu);
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ef_cb_menu_edit(void)
|
||||
{
|
||||
Efreet_Menu *menu, *entry;
|
||||
Efreet_Desktop *desktop;
|
||||
|
||||
// menu = efreet_menu_get();
|
||||
menu = efreet_menu_parse(PACKAGE_DATA_DIR"/test/test.menu");
|
||||
if (!menu)
|
||||
{
|
||||
printf("efreet_menu_get() returned NULL\n");
|
||||
return 0;
|
||||
}
|
||||
#if 0
|
||||
printf("\n");
|
||||
efreet_menu_dump(menu, "");
|
||||
printf("\n");
|
||||
#endif
|
||||
|
||||
desktop = efreet_desktop_get(PACKAGE_DATA_DIR"/test/test.desktop");
|
||||
if (!desktop)
|
||||
{
|
||||
efreet_menu_free(menu);
|
||||
printf("No desktop found.\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
efreet_menu_desktop_insert(menu, desktop, 0);
|
||||
#if 0
|
||||
printf("\n");
|
||||
efreet_menu_dump(menu, "");
|
||||
printf("\n");
|
||||
#endif
|
||||
entry = eina_list_data_get(menu->entries);
|
||||
if (desktop != entry->desktop)
|
||||
{
|
||||
efreet_menu_free(menu);
|
||||
return 0;
|
||||
}
|
||||
|
||||
efreet_menu_desktop_insert(menu, desktop, 2);
|
||||
#if 0
|
||||
printf("\n");
|
||||
efreet_menu_dump(menu, "");
|
||||
printf("\n");
|
||||
#endif
|
||||
entry = eina_list_nth(menu->entries, 2);
|
||||
if (desktop != entry->desktop)
|
||||
{
|
||||
efreet_menu_free(menu);
|
||||
return 0;
|
||||
}
|
||||
|
||||
efreet_menu_desktop_insert(menu, desktop, -1);
|
||||
#if 0
|
||||
printf("\n");
|
||||
efreet_menu_dump(menu, "");
|
||||
printf("\n");
|
||||
#endif
|
||||
entry = eina_list_data_get(eina_list_last(menu->entries));
|
||||
if (desktop != entry->desktop)
|
||||
{
|
||||
efreet_menu_free(menu);
|
||||
return 0;
|
||||
}
|
||||
|
||||
efreet_menu_free(menu);
|
||||
return 1;
|
||||
}
|
|
@ -1,58 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include "Efreet_Mime.h"
|
||||
#include "config.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <Ecore.h>
|
||||
|
||||
#define THEME "Tango"
|
||||
#define SIZE 128
|
||||
|
||||
int
|
||||
ef_mime_cb_get(void)
|
||||
{
|
||||
const char *mime = NULL, *icon;
|
||||
int misses = 0, i = 0;
|
||||
struct
|
||||
{
|
||||
char *file;
|
||||
char *mime;
|
||||
} files[] = {
|
||||
{PACKAGE_DATA_DIR"/test/test_type.desktop", "application/x-desktop"},
|
||||
{PACKAGE_DATA_DIR"/test/entry.png", "image/png"},
|
||||
{PACKAGE_DATA_DIR"/test/entry", "image/png"},
|
||||
{PACKAGE_DATA_DIR"/test/sub", "inode/directory"},
|
||||
{NULL, NULL}
|
||||
};
|
||||
double start;
|
||||
|
||||
if (!efreet_mime_init())
|
||||
{
|
||||
printf("Could not init efreet\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
for (i = 0; files[i].file; ++i)
|
||||
{
|
||||
mime = efreet_mime_type_get(files[i].file);
|
||||
if (!mime)
|
||||
{
|
||||
printf("Got %s as null instead of %s\n", files[i].file, files[i].mime);
|
||||
misses ++;
|
||||
}
|
||||
else if (strcmp(mime, files[i].mime))
|
||||
{
|
||||
printf("Got %s as %s instead of %s\n", files[i].file, mime, files[i].mime);
|
||||
misses ++;
|
||||
}
|
||||
start = ecore_time_get();
|
||||
icon = efreet_mime_type_icon_get(files[i].mime, THEME, SIZE);
|
||||
printf("mime icon: %s %s %f\n", files[i].mime, icon, ecore_time_get() - start);
|
||||
}
|
||||
|
||||
efreet_mime_shutdown();
|
||||
|
||||
return !misses;
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
#ifndef EF_TEST
|
||||
#define EF_TEST
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <eina_types.h>
|
||||
|
||||
#define IF_FREE(x) do { if (x) free(x); x = NULL; } while (0);
|
||||
#define NEW(x, c) calloc(c, sizeof(x))
|
||||
|
||||
#endif
|
|
@ -1,29 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include "efreet_private.h"
|
||||
#include <stdio.h>
|
||||
|
||||
int
|
||||
ef_cb_utils(void)
|
||||
{
|
||||
Efreet_Desktop *desktop;
|
||||
const char *tmp2;
|
||||
|
||||
printf("\n");
|
||||
|
||||
tmp2 = efreet_util_path_to_file_id("/usr/share/applications/this/tmp/test.desktop");
|
||||
if (tmp2) printf("%s\n", tmp2);
|
||||
|
||||
desktop = efreet_util_desktop_file_id_find("kde-kresources.desktop");
|
||||
printf("kde-kresources.desktop: %p\n", desktop);
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
desktop = efreet_util_desktop_file_id_find("mplayer.desktop");
|
||||
printf("mplayer.desktop: %p\n", desktop);
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
desktop = efreet_util_desktop_file_id_find("nautilus-computer.desktop");
|
||||
printf("nautilus-computer.desktop: %p\n", desktop);
|
||||
efreet_desktop_free(desktop);
|
||||
|
||||
return 1;
|
||||
}
|
|
@ -1,134 +0,0 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
#endif
|
||||
#include <limits.h>
|
||||
#include <stdio.h>
|
||||
#include <dirent.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/mman.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include <Eina.h>
|
||||
#include <Eet.h>
|
||||
#include <Ecore.h>
|
||||
#include <Ecore_File.h>
|
||||
|
||||
#include "Efreet.h"
|
||||
#include "efreet_private.h"
|
||||
#include "efreet_cache_private.h"
|
||||
|
||||
static Eet_Data_Descriptor *edd = NULL;
|
||||
|
||||
int verbose = 0;
|
||||
|
||||
static void
|
||||
dump(Efreet_Icon_Theme *theme, Eet_File *ef)
|
||||
{
|
||||
Efreet_Cache_Icons *cache;
|
||||
Eina_Iterator *it;
|
||||
const char *key;
|
||||
unsigned int count = 0;
|
||||
double start, avg;
|
||||
|
||||
start = ecore_time_get();
|
||||
|
||||
printf("open: %s\n", theme->name.internal);
|
||||
|
||||
cache = eet_data_read(ef, edd, theme->name.internal);
|
||||
|
||||
printf("read: %s %f\n", theme->name.internal, ecore_time_get() - start);
|
||||
|
||||
if (!cache || !cache->icons) return ;
|
||||
|
||||
it = eina_hash_iterator_key_new(cache->icons);
|
||||
|
||||
EINA_ITERATOR_FOREACH(it, key)
|
||||
{
|
||||
Efreet_Cache_Icon *icon;
|
||||
unsigned int i;
|
||||
|
||||
icon = eina_hash_find(cache->icons, key);
|
||||
|
||||
for (i = 0; i < icon->icons_count; ++i)
|
||||
count += icon->icons[i]->paths_count;
|
||||
}
|
||||
|
||||
eina_iterator_free(it);
|
||||
|
||||
efreet_hash_free(cache->icons, EINA_FREE_CB(efreet_cache_icon_free));
|
||||
free(cache);
|
||||
|
||||
start = ecore_time_get() - start;
|
||||
avg = start / count;
|
||||
printf("read: %s - %u paths (time: %f) (avg %f)\n", theme->name.internal, count, start, avg);
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
Eet_File *icons_ef;
|
||||
Eet_File *theme_ef;
|
||||
Eina_List *l = NULL;
|
||||
Efreet_Icon_Theme *theme;
|
||||
int i;
|
||||
|
||||
efreet_cache_update = 0;
|
||||
|
||||
if (!efreet_init()) return -1;
|
||||
|
||||
theme_ef = eet_open(efreet_icon_theme_cache_file(), EET_FILE_MODE_READ);
|
||||
if (!theme_ef) return -1;
|
||||
|
||||
edd = efreet_icons_edd(EINA_FALSE);
|
||||
if (!edd) return -1;
|
||||
|
||||
if (argc > 1)
|
||||
{
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
theme = eet_data_read(theme_ef, efreet_icon_theme_edd(), argv[i]);
|
||||
if (theme) l = eina_list_append(l, theme);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
char **keys;
|
||||
int num;
|
||||
|
||||
keys = eet_list(theme_ef, "*", &num);
|
||||
if (keys)
|
||||
{
|
||||
for (i = 0; i < num; i++)
|
||||
{
|
||||
theme = eet_data_read(theme_ef, efreet_icon_theme_edd(), keys[i]);
|
||||
if (theme) l = eina_list_append(l, theme);
|
||||
}
|
||||
free(keys);
|
||||
}
|
||||
}
|
||||
|
||||
icons_ef = eet_open(efreet_icon_cache_file(), EET_FILE_MODE_READ);
|
||||
if (!icons_ef) return -1;
|
||||
|
||||
EINA_LIST_FREE(l, theme)
|
||||
{
|
||||
void *data;
|
||||
|
||||
dump(theme, icons_ef);
|
||||
|
||||
/* free theme */
|
||||
eina_list_free(theme->paths);
|
||||
eina_list_free(theme->inherits);
|
||||
EINA_LIST_FREE(theme->directories, data)
|
||||
free(data);
|
||||
free(theme);
|
||||
}
|
||||
|
||||
eet_close(icons_ef);
|
||||
|
||||
efreet_shutdown();
|
||||
return 0;
|
||||
}
|
|
@ -1,57 +0,0 @@
|
|||
#include <Efreet.h>
|
||||
#include <stdio.h>
|
||||
#include <limits.h>
|
||||
#include "ef_test.h"
|
||||
|
||||
static void dump(Efreet_Menu *menu, const char *path);
|
||||
|
||||
int
|
||||
main(int argc __UNUSED__, char **argv __UNUSED__)
|
||||
{
|
||||
Efreet_Menu *menu;
|
||||
|
||||
if (!efreet_init())
|
||||
{
|
||||
fprintf(stderr, "Failed to init Efreet\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
menu = efreet_menu_get();
|
||||
if (!menu)
|
||||
{
|
||||
fprintf(stderr, "Failed to read menu\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
dump(menu, "");
|
||||
|
||||
efreet_menu_free(menu);
|
||||
efreet_shutdown();
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void
|
||||
dump(Efreet_Menu *menu, const char *path)
|
||||
{
|
||||
Efreet_Menu *entry;
|
||||
Eina_List *l;
|
||||
|
||||
if (!menu || !menu->entries) return;
|
||||
|
||||
EINA_LIST_FOREACH(menu->entries, l, entry)
|
||||
{
|
||||
if (entry->type == EFREET_MENU_ENTRY_DESKTOP)
|
||||
{
|
||||
if (!path || !*path) path = "/";
|
||||
printf("%s\t%s\t%s\n", path, entry->id,
|
||||
entry->desktop->orig_path);
|
||||
}
|
||||
else if (entry->type == EFREET_MENU_ENTRY_MENU)
|
||||
{
|
||||
char new_path[PATH_MAX];
|
||||
|
||||
snprintf(new_path, sizeof(new_path), "%s%s/", path, entry->name);
|
||||
dump(entry, new_path);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,103 +0,0 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
#endif
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include <Efreet.h>
|
||||
|
||||
#include "efreet_suite.h"
|
||||
|
||||
typedef struct _Efreet_Test_Case Efreet_Test_Case;
|
||||
|
||||
struct _Efreet_Test_Case
|
||||
{
|
||||
const char *test_case;
|
||||
void (*build)(TCase *tc);
|
||||
};
|
||||
|
||||
static const Efreet_Test_Case etc[] = {
|
||||
{ "Efreet", efreet_test_efreet },
|
||||
{ "Efreet Cache", efreet_test_efreet_cache },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
static void
|
||||
_list_tests(void)
|
||||
{
|
||||
const Efreet_Test_Case *itr;
|
||||
|
||||
itr = etc;
|
||||
fputs("Available Test Cases:\n", stderr);
|
||||
for (; itr->test_case; itr++)
|
||||
fprintf(stderr, "\t%s\n", itr->test_case);
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_use_test(int argc, const char **argv, const char *test_case)
|
||||
{
|
||||
if (argc < 1)
|
||||
return 1;
|
||||
|
||||
for (; argc > 0; argc--, argv++)
|
||||
if (strcmp(test_case, *argv) == 0)
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static Suite *
|
||||
efreet_suite_build(int argc, const char **argv)
|
||||
{
|
||||
TCase *tc;
|
||||
Suite *s;
|
||||
int i;
|
||||
|
||||
s = suite_create("Efreet");
|
||||
|
||||
for (i = 0; etc[i].test_case; ++i)
|
||||
{
|
||||
if (!_use_test(argc, argv, etc[i].test_case)) continue;
|
||||
tc = tcase_create(etc[i].test_case);
|
||||
|
||||
etc[i].build(tc);
|
||||
|
||||
suite_add_tcase(s, tc);
|
||||
tcase_set_timeout(tc, 0);
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
Suite *s;
|
||||
SRunner *sr;
|
||||
int i, failed_count;
|
||||
|
||||
for (i = 1; i < argc; i++)
|
||||
if ((strcmp(argv[i], "-h") == 0) ||
|
||||
(strcmp(argv[i], "--help") == 0))
|
||||
{
|
||||
fprintf(stderr, "Usage:\n\t%s [test_case1 .. [test_caseN]]\n",
|
||||
argv[0]);
|
||||
_list_tests();
|
||||
return 0;
|
||||
}
|
||||
else if ((strcmp(argv[i], "-l") == 0) ||
|
||||
(strcmp(argv[i], "--list") == 0))
|
||||
{
|
||||
_list_tests();
|
||||
return 0;
|
||||
}
|
||||
|
||||
s = efreet_suite_build(argc - 1, (const char **)argv + 1);
|
||||
sr = srunner_create(s);
|
||||
|
||||
srunner_run_all(sr, CK_NORMAL);
|
||||
failed_count = srunner_ntests_failed(sr);
|
||||
srunner_free(sr);
|
||||
|
||||
return (failed_count == 0) ? 0 : 255;
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
#ifndef _EFREET_SUITE_H
|
||||
#define _EFREET_SUITE_H
|
||||
|
||||
#include <check.h>
|
||||
|
||||
void efreet_test_efreet(TCase *tc);
|
||||
void efreet_test_efreet_cache(TCase *tc);
|
||||
|
||||
|
||||
#endif /* _EFREET_SUITE_H */
|
|
@ -1,25 +0,0 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
#endif
|
||||
|
||||
#include <Efreet.h>
|
||||
|
||||
#include "efreet_suite.h"
|
||||
|
||||
|
||||
START_TEST(efreet_test_efreet_init)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = efreet_init();
|
||||
fail_if(ret != 1);
|
||||
|
||||
ret = efreet_shutdown();
|
||||
fail_if(ret != 0);
|
||||
}
|
||||
END_TEST
|
||||
|
||||
void efreet_test_efreet(TCase *tc)
|
||||
{
|
||||
tcase_add_test(tc, efreet_test_efreet_init);
|
||||
}
|
|
@ -1,25 +0,0 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
#endif
|
||||
|
||||
#include <Efreet.h>
|
||||
|
||||
#include "efreet_suite.h"
|
||||
|
||||
|
||||
START_TEST(efreet_test_efreet_cache_init)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = efreet_init();
|
||||
fail_if(ret != 1);
|
||||
|
||||
ret = efreet_shutdown();
|
||||
fail_if(ret != 0);
|
||||
}
|
||||
END_TEST
|
||||
|
||||
void efreet_test_efreet_cache(TCase *tc)
|
||||
{
|
||||
tcase_add_test(tc, efreet_test_efreet_cache_init);
|
||||
}
|
|
@ -1,180 +0,0 @@
|
|||
#include "Efreet.h"
|
||||
#include "Efreet_Mime.h"
|
||||
#include <Ecore.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
int ef_cb_efreet_data_home(void);
|
||||
int ef_cb_efreet_config_home(void);
|
||||
int ef_cb_efreet_cache_home(void);
|
||||
int ef_cb_efreet_data_dirs(void);
|
||||
int ef_cb_efreet_config_dirs(void);
|
||||
int ef_cb_efreet_icon_theme(void);
|
||||
int ef_cb_efreet_icon_theme_list(void);
|
||||
int ef_cb_efreet_icon_match(void);
|
||||
int ef_cb_ini_parse(void);
|
||||
int ef_cb_ini_long_line(void);
|
||||
int ef_cb_ini_garbage(void);
|
||||
#if DEFAULT_VISIBILITY
|
||||
int ef_cb_locale(void);
|
||||
#endif
|
||||
int ef_cb_desktop_parse(void);
|
||||
int ef_cb_desktop_save(void);
|
||||
int ef_cb_desktop_command_get(void);
|
||||
int ef_cb_desktop_type_parse(void);
|
||||
#if 0
|
||||
int ef_cb_desktop_file_id(void);
|
||||
#endif
|
||||
int ef_cb_menu_get(void);
|
||||
int ef_cb_menu_with_slashes(void);
|
||||
int ef_cb_menu_save(void);
|
||||
#if 0
|
||||
int ef_cb_menu_edit(void);
|
||||
#endif
|
||||
int ef_cb_utils(void);
|
||||
int ef_mime_cb_get(void);
|
||||
|
||||
typedef struct Efreet_Test Efreet_Test;
|
||||
struct Efreet_Test
|
||||
{
|
||||
char *name;
|
||||
int (*cb)(void);
|
||||
};
|
||||
|
||||
static Efreet_Test tests[] = {
|
||||
{"Data Home", ef_cb_efreet_data_home},
|
||||
{"Config Home", ef_cb_efreet_config_home},
|
||||
{"Cache Home", ef_cb_efreet_cache_home},
|
||||
{"Data Directories", ef_cb_efreet_data_dirs},
|
||||
{"Config Directories", ef_cb_efreet_config_dirs},
|
||||
{"Icon Theme Basic", ef_cb_efreet_icon_theme},
|
||||
{"Icon Theme List", ef_cb_efreet_icon_theme_list},
|
||||
{"Icon Matching", ef_cb_efreet_icon_match},
|
||||
{"INI Parsing", ef_cb_ini_parse},
|
||||
{"INI Long Line Parsing", ef_cb_ini_long_line},
|
||||
{"INI Garbage Parsing", ef_cb_ini_garbage},
|
||||
#if DEFAULT_VISIBILITY
|
||||
{"Locale Parsing", ef_cb_locale},
|
||||
#endif
|
||||
{"Desktop Parsing", ef_cb_desktop_parse},
|
||||
{"Desktop Type Parsing", ef_cb_desktop_type_parse},
|
||||
{"Desktop Save", ef_cb_desktop_save},
|
||||
{"Desktop Command", ef_cb_desktop_command_get},
|
||||
#if 0
|
||||
{"Desktop File ID", ef_cb_desktop_file_id},
|
||||
#endif
|
||||
{"Menu Parsing", ef_cb_menu_get},
|
||||
{"Menu Incorrect Names", ef_cb_menu_with_slashes},
|
||||
{"Menu Save", ef_cb_menu_save},
|
||||
#if 0
|
||||
{"Menu Edit", ef_cb_menu_edit},
|
||||
#endif
|
||||
{"Utils", ef_cb_utils},
|
||||
{"Mime", ef_mime_cb_get},
|
||||
{NULL, NULL}
|
||||
};
|
||||
|
||||
extern char **environ;
|
||||
static Eina_List *environment = NULL;
|
||||
|
||||
void
|
||||
environment_store(void)
|
||||
{
|
||||
char *env;
|
||||
char **e;
|
||||
|
||||
EINA_LIST_FREE(environment, env)
|
||||
free(env);
|
||||
|
||||
for (e = environ; *e; e++)
|
||||
environment = eina_list_append(environment, strdup(*e));
|
||||
}
|
||||
|
||||
void
|
||||
environment_restore(void)
|
||||
{
|
||||
Eina_List *l;
|
||||
char *e;
|
||||
if (!environment) return;
|
||||
|
||||
clearenv();
|
||||
EINA_LIST_FOREACH(environment, l, e)
|
||||
putenv(e);
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc, char ** argv)
|
||||
{
|
||||
int i, passed = 0, num_tests = 0;
|
||||
Eina_List *run = NULL;
|
||||
double total;
|
||||
char *env;
|
||||
|
||||
eina_init();
|
||||
ecore_init();
|
||||
|
||||
total = ecore_time_get();
|
||||
if (argc > 1)
|
||||
{
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if ((!strcmp(argv[i], "-h")) ||
|
||||
(!strcmp(argv[i], "--help")))
|
||||
{
|
||||
for (i = 0; tests[i].name; i++)
|
||||
{
|
||||
printf("%s\n", tests[i].name);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
run = eina_list_append(run, argv[i]);
|
||||
}
|
||||
}
|
||||
|
||||
environment_store();
|
||||
for (i = 0; tests[i].name; i++)
|
||||
{
|
||||
int ret;
|
||||
double start;
|
||||
|
||||
/* we've been given specific tests and it isn't in the list */
|
||||
if (run && !eina_list_search_unsorted(run, EINA_COMPARE_CB(strcasecmp),
|
||||
tests[i].name))
|
||||
continue;
|
||||
|
||||
if (!efreet_init())
|
||||
{
|
||||
printf("Error initializing Efreet\n");
|
||||
continue;
|
||||
}
|
||||
|
||||
num_tests ++;
|
||||
|
||||
printf("%s:\t\t", tests[i].name);
|
||||
fflush(stdout);
|
||||
start = ecore_time_get();
|
||||
ret = tests[i].cb();
|
||||
printf("%s in %.3f seconds\n", (ret ? "PASSED" : "FAILED"),
|
||||
ecore_time_get() - start);
|
||||
passed += ret;
|
||||
|
||||
efreet_shutdown();
|
||||
environment_restore();
|
||||
}
|
||||
|
||||
printf("\n-----------------\n");
|
||||
clearenv();
|
||||
EINA_LIST_FREE(environment, env)
|
||||
free(env);
|
||||
printf("Passed %d of %d tests.\n", passed, num_tests);
|
||||
|
||||
while (run)
|
||||
run = eina_list_remove_list(run, run);
|
||||
|
||||
printf("Total run: %.3f seconds\n", ecore_time_get() - total);
|
||||
|
||||
ecore_shutdown();
|
||||
eina_shutdown();
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue