summaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* test: Run tests in unique directoryOndrej Holy2021-01-189-100/+154
| | | | | | | | | | The tests currently create various files and directories with generic names and manipulate with them directly in the `/tmp` directory. The tests also remove all files in `/tmp` with the generic prefixes like `move`, `copy`, etc. This can simply cause test suite failures if files with such names already exist in the `/tmp` directory. Also, the test suite can easily remove files created by other applications. Let's always create an unique directory in `/tmp` for tests to fix the mentioned problems...
* Port to Tracker 3Sam Thursfield2020-09-022-45/+144
| | | | | | | | | | | | | | | | | | | | | | | | Mostly the port is straightforward, we connect to tracker-miner-fs explicitly over D-Bus instead of the centralized tracker-store daemon we connected to previously. The search-engine-tracker test is now isolated from the user's real Tracker index using the `tracker-sandbox` script provided by Tracker, and it lets tracker-miner-fs index the test file rather than trying to synthesize the expected database contents. There are more changes in nautilus-tag-manager.c. Until now, starred file information was stored in the tracker-miner-fs database. This has some downsides, firstly the data is deleted if someone runs `tracker reset --hard`, secondly it isn't possible to do this from inside a Flatpak sandbox with Tracker 3.0. because the This commit changes the NautilusTagManager to set up a private database inside XDG_DATA_HOME/nautilus/tags. This stores the starred file information. The database is managed with Tracker, which allows us to continue using the rename-tracking that tracker-miner-fs provides. The same limitations apply as before that only files in indexed locations can be starred.
* tests: Make search tests return error codes on failureSam Thursfield2020-09-024-0/+25
| | | | | Previously the tests could appear to succeed even if the search didn't work as expected.
* dbus-manager: add and implement FileOperations2 interfaceAlberts Muktupāvels2020-04-062-2/+3
| | | | | | | | | | Add new version of FileOperations interface. This versions adds PlatformData argument to all methods. Currently supported arguments are parent-handle and timestamp. This change is necessary for proper focus handling. https://gitlab.gnome.org/GNOME/nautilus/merge_requests/504
* general: Run uncrustify scriptOndrej Holy2020-04-0510-57/+64
| | | | | There are some style issue since the last run. Let's run it again before enabling style-check CI job.
* test: As the previous commit, increase test timeoutCarlos Soriano2019-01-221-1/+1
| | | These tests take long...
* test: Increase timeout to 480Carlos Soriano2019-01-221-1/+1
| | | Those tests just take long time...
* general: Null-initialize some more auto variablesErnestas Kulik2018-12-121-2/+2
|
* tests: Increase timeoutCarlos Soriano2018-09-142-2/+2
| | | It timeouts in Debian and sometimes locally.
* tests: Make timeout biggerCarlos Soriano2018-09-122-2/+4
| | | | Some tests just require more, don't fail because they do so.
* Undo/redo, search tests, test library and moreAlexandru Fazakas2018-08-2810-766/+3247
|
* test: copy-files: Fix copy-files testAlexandru Fazakas2018-07-201-82/+82
| | | | | | | | In order for the tests to work in parallel, we need the file/directory names not to collide. This patch fixes the namy for the copy-files test, now all file-operations tests should be able to work in parallel.
* test: Add trash-or-delete testAlexandru Fazakas2018-07-202-0/+678
| | | | | This patch adds trash_or_delete synchronous alternative and a test including both of these functionalities.
* test: Add copy operations unit testAlexandru Fazakas2018-07-203-4/+786
| | | | | This patch adds both a sync alternative to the copy operations and a test for it.
* test: dir-has-files: Clean up filesAlexandru Fazakas2018-07-201-0/+4
| | | | | | | We should clean up files/directories after using them for testing. This patch deletes all create files after using them for the dir-has-files test.
* tests: Remove git conflict indicator from build fileErnestas Kulik2018-07-191-1/+0
| | | | Oops.
* tests: Use GMainLoop in search engine testErnestas Kulik2018-07-193-10/+16
| | | | This removes the need for a display.
* test: Add file-operations-move testAlexandru Fazakas2018-07-163-1/+755
| | | | | This patch includes the addition of the sync alternative to the file-operations-move function and a test for it.
* test: Remove useless macro definitionAlexandru Fazakas2018-05-181-2/+0
| | | | | This definition in the dir_has_files unit test is not used, so it should be removed.
* test: Add dir_has_files unit testAlexandru Fazakas2018-05-182-0/+87
| | | | | | | In this patch we added an unit test with 3 simple tests for the dir_has_files. https://gitlab.gnome.org/GNOME/nautilus/issues/224
* tests: directory-async: Use GMainLoopErnestas Kulik2018-05-181-4/+7
| | | | Using the GTK+ main loop doesn’t make a lot of sense in this case.
* build: Set a couple env vars when running testsErnestas Kulik2018-05-183-2/+42
| | | | | | | This will save some time/thinking when running tests manually. G_TEST_BUILDDIR and G_TEST_SRCDIR will be useful if g_test_build_filename() is ever used, since our primary build mode is outside the source directory, which would break the function.
* file: Remove link info attributeAntónio Fernandes2018-05-141-1/+0
| | | | Leftovers from NautilusLink removal.
* test: Add file-utilities unit testAlexandru Fazakas2018-04-042-0/+242
| | | | | | | | File utilities operations need to be tested thoroughly everytime we make changes to make sure they're fine to use further. This patch introduces an unit test file for the nautilus_file_selection_equal.
* general: Remove include guards in favor of pragma onceAlexandru Fazakas2018-03-191-5/+2
| | | | | | | | | | | | | | | | | | The traditional include guards are not as easy to handle and require extra thought into the names. Pragma once is an easier, more contributor friendly approach. Closes https://gitlab.gnome.org/GNOME/nautilus/issues/294 general: Remove include guards in favor of pragma once The traditional include guards are not as easy to handle and require extra thought into the names. Pragma once is an easier, more contributor friendly approach. Closes https://gitlab.gnome.org/GNOME/nautilus/issues/294
* build: make all tests optionalErnestas Kulik2018-03-161-1/+1
| | | | This can help cut down on link times a bit when working on things.
* general: fix old-style function declarationsErnestas Kulik2018-03-012-33/+33
| | | | | Parameterless function declarations imply indeterminate parameter count, while the implementations take no arguments.
* tests: Split between display and displaylessCarlos Soriano2018-01-0615-27/+38
| | | | | | | | Some tests require gtk_init, which requires a display and therefore cannot be part of the tests to be ran in the GitLab CI. Split those so we can pass an option to meson to only test the displayless tests for GitLab CI.
* tests: remove obsolete testErnestas Kulik2018-01-051-39/+0
| | | | | test-eel-background hasn’t been built forever and the code it tests is long gone.
* tests: update common filename prefix testErnestas Kulik2018-01-051-97/+12
| | | | | | 61ac48bdc0230eed8466b7d1a3164aae2a5e8594 changed the way the prefix is computed, thus breaking some of the tests. This commit removes irrelevant tests and updates broken cases.
* build: general cleanupsErnestas Kulik2018-01-021-24/+25
| | | | | | | | | | | | | | This commit does the following: * Canonicalize the style: * Use two-space indentations. * Un-Autotools-ify option names. * Don’t align arguments, simply increase indentation. * Don’t add a space before opening parenthesis in calls. * Remove unused variables. * Remove unused dependencies. * Remove config.h.meson. * Optimize dependencies. * Use disabler functionality for libselinux dependency, to save lines.
* general: remove desktop supportErnestas Kulik2018-01-021-1/+0
|
* file-utilities: rework common prefix computationErnestas Kulik2017-12-232-127/+0
| | | | | | | | | | | | | | | | | Currently, the process for getting the common prefix of a list of file names is a tad too greedy: 1. Find the common prefix of all the strings. 2. Strip the extension from the prefix. 3. Strip trailing punctuation. Step 2 may strip dots if there’s trailing whitespace and step 3 may strip useful punctuation (e.g. parentheses). This commit reworks the process as such: 1. Strip the extension from all the file names. 2. Find the common prefix of all the strings. 3. Trim trailing whitespace. Fixes #174.
* Revert "search-engine: fix search providers handling"Alexandru Pandelea2017-08-171-1/+3
| | | | | | This reverts commit 37693c427941d60634bad80dd7c2d0b3a8523cea. The patch was pushed by accident.
* search-engine: fix search providers handlingAlexandru Pandelea2017-08-151-3/+1
| | | | | | | | | | | | When starting the search providers, some provider might finish before all providers are started, so a wrong value of providers_running will be used, making Nautilus crash. To fix this, keep a queue of the started providers and whenever the value of the finised/running providers is needed, check the status of each provider. https://bugzilla.gnome.org/show_bug.cgi?id=785723
* autotools: kill itErnestas Kulik2017-03-221-47/+0
| | | | | | We’re moving to Meson this cycle, so this is losing some deadweight. https://bugzilla.gnome.org/show_bug.cgi?id=780366
* tests: Fix directory extensions pointsJan Tojnar2017-02-242-0/+6
| | | | | | | | | | In 7840b533e2, `nautilus-directory-provider` extension point was added to the code paths used by the tests. When glib is asked for extensions, it assumes the extension point is registered so it segfaults. This patch registers the extension point before the tests are run. https://bugzilla.gnome.org/show_bug.cgi?id=779178
* general: add support for MesonErnestas Kulik2017-02-241-0/+31
| | | | | | | | | | | | Since it’s 2017 already, Nautilus should use a build system that doesn’t take longer to set up the build than it takes to actually build. An observed build time using Ninja of roughly one-fifth of what it took Autotools is more than reason enough to add support for Meson. Along with that, this commit adds a convenience script to generate a tarball for releases, since we use libgd as a submodule and Meson does not handle source distributions. https://bugzilla.gnome.org/show_bug.cgi?id=778167
* general: drop git.mkErnestas Kulik2017-02-242-2/+6
| | | | | | | | This commit removes git.mk and adds hand-written gitignore files. That is needed to ignore build/, which is the directory of choice for Meson builds. https://bugzilla.gnome.org/show_bug.cgi?id=778167
* general: run uncrustifyCarlos Soriano2016-08-2911-975/+979
| | | | | | | | And make the style of Nautilus the same for all files. Hopefully we can fix all the style issues we can find in the next days, so expect a little of movement on this. https://bugzilla.gnome.org/show_bug.cgi?id=770564
* general: add uncrustify scriptCarlos Soriano2016-08-291-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current style of nautilus is rather poor and mixes at least 3 different code styles. Specific issues that affect the most common contributors to Nautilus performance are: - tabs for multiline alignment. - mix of tabs and spaces. - errors on no braced one liners conditionals. - errors on non braced case statements with variable declarations. So I would say requirements for the style is to address the previous issues and also be a well known style. I don't want new contributors to see a new style completely different from C books authors. So far, I found Allman (aka BSD) style which seems the choice of most C books authors as far as I can see on internet, and it address the previous mentioned issues. Since uncrustify doesn't support the aligment of parameters we do for multiple stars "**", we also added a script made by Sebastian Wilmet to align those. As a matter of practicity I'm going to convert all Nautilus style to this one, and if the next person who contributes most on Nautilus has a different choice, please feel free to change it to whatever makes your performance and your contributors performance the best. https://bugzilla.gnome.org/show_bug.cgi?id=770564
* tests: Fix build failure caused by C99 useEmmanuele Bassi2016-07-101-3/+6
| | | | | | | | | | | Build failure in Continuous: ../../test/test-file-utilities-get-common-filename-prefix.c: In function 'test_many_strings': ../../test/test-file-utilities-get-common-filename-prefix.c:366:9: error: 'for' loop initial declarations are only allowed in C99 or C11 mode for (int i = 0; i < 500; ++i) {
* files-view: change "New Folder /w Selection" to offer a nameNeil Herald2016-07-104-0/+858
| | | | | | | | | | | | | New Folder with Selection currently doesn't offer a folder name. It would be better if it suggested a folder name based on the files that are selected. With this change, it now looks for a common filename prefix of the selected files, and pre-populates the folder name entry with that. If no common prefix is found that is greater than 3 characters long, the folder name entry will be left blank. https://bugzilla.gnome.org/show_bug.cgi?id=747907
* general: merge libnautilus-private to srcwip/csoriano/private-to-srcCarlos Soriano2016-04-257-15/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And fix make distcheck. Although libnautilus-private seem self contained, it was actually depending on the files on src/ for dnd. Not only that, but files in libnautilus-private also were depending on dnd files, which you can guess it's wrong. Before the desktop split, this was working because the files were distributed, but now was a problem since we reestructured the code, and now nautilus being a library make distcheck stop working. First solution was try to fix this inter dependency of files, but at some point I realized that there was no real point on splitting some of those files, because for example, is perfectly fine for dnd to need to access the window functions, and it's perfectly fine for the widgets in the private library to need to access to all dnd functions. So seems to me the private library of nautilus is somehow an artificial split, which provides more problems than solutions. We needed libnautilus-private to have a private library that we could isolate from extensions, but I don't think it worth given the problems it provides, and also, this not so good logical split. Right now, since with the desktop split we created a libnautilus to be used by the desktop part of nautilus, extensions have access to all the API of nautilus. We will think in future how this can be handled if we want. So for now, merge the libnautilus-private into src, and let's rethink a better logic to split the code and the private parts of nautilus than what we had. Thanks a lot to Rafael Fonseca for helping in get this done. https://bugzilla.gnome.org/show_bug.cgi?id=765543
* search: done loading signal only if not restarting engineCarlos Soriano2015-07-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was working as: - Search directory starts a new search - Search engine starts all search providers, each one in its own thread. - User changes query - Search engine stops all search providers - Searchs providers, since they are in its own thread, cancel in a unknown time. - Search directory starts a new search, even before all providers are finished. - Search engine is marked as need to restart. - Search providers finished. - Search engine emits finished signal, since all search providers now are stopped. - Clients doesn't have a way to know if the engine actually finished searching the current search, or the previous search that the client asked to stop. That might confuse clients if they ask for results. - Search engine restart the search providers without noticing the client, that thinks that the latest search it started was finished already. So to fix this confusion, only report that the engine actually finished if the engine is not going to restart the search providers. In this way a client can start a batch of consecutive searches without the risk of getting search finished signals from previous searches. Clients now will always get the search-finished signal of the latest search they started.
* operations: implement new designCarlos Soriano2015-07-171-1/+1
| | | | | | | | | Now operations reside in the toolbar, in form of a button with a popover. In this way we avoid to have a nautilus window hanging around for it. When no nautilus window is open, the persistence handlers of nautilus are enough. This use a notification if the server supports it or a systray icon in case it doesn't.
* eel: remove unused EelEditableLabelCosimo Cecchi2015-05-232-59/+0
| | | | | This was only used for in-place renaming inside the canvas container, which does not exist any more. Remove it.
* Don't mention FSF addressCosimo Cecchi2014-02-171-2/+1
| | | | | | Use the website instead. https://bugzilla.gnome.org/show_bug.cgi?id=721518
* Updated FSF's addressDaniel Mustieles2014-01-312-4/+2
|
* build: stop using INCLUDES, deprecated by automake 1.7Andrés G. Aragoneses2013-06-181-1/+1
| | | | | | | | | | | | | | | | | | | We already depend on automake 1.9, so using the replacement of INCLUDES (AM_CPPFLAGS) won't hurt, especially now that it is a warning shown by default since automake 1.13, as evidenced by this build log of mine: Makefile.am: installing './INSTALL' eel/Makefile.am:5: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') eel/Makefile.am: installing './depcomp' parallel-tests: installing './test-driver' libnautilus-extension/Makefile.am:7: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') libnautilus-private/Makefile.am:5: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') nautilus-sendto-extension/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') src/Makefile.am:13: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') test/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') Signed-off-by: Alexander Larsson <alexl@redhat.com>