David Bremner
82faa059b8
test/T360-symbol-hiding: use readelf in place of nm
...
It turns out that using nm -P isn't as portable as hoped. In
particular with some ELF ABIs (e.g. ppc64 ELFv1), the desired symbols
end up in the data section instead of text.
The test is currently only functional on ELF based architectures, so I
think it's legit to depend on readelf instead of nm.
The switch to readelf has the advantage that we can explicitely ask
for all of the symbols with global visibility, rather than grepping
for notmuch. That seems a more robust approach since it will catch any
strangely named global symbols.
2020-12-13 08:23:42 -04:00
David Bremner
85b5803869
test: fix syntax errors in erroring calls to notmuch insert
...
notmuch insert does not currently support passing a filename for the
input, so all of these tests have an extra error in addition to the
one being tested for.
Currently this does not make a difference because the error being
tested for is caught before the error of an extra command line
argument. In the future it might make a difference, and in any case it
is confusing.
2020-09-04 21:04:33 -03:00
David Bremner
fe449f779d
test: fix uninitialized variable use in T562-lib-database
...
Fix a copy paste error of using the boolean ret as a notmuch_status_t,
and uninitialized.
2020-08-16 14:04:36 -03:00
David Bremner
25f9a42287
test: update README to reflect dropping upgrade tests
...
These test databases have been unneeded since ee897cab8
.
2020-08-16 10:41:44 -03:00
Teemu Likonen
adb90b9bb6
Emacs: Indent first header line only when indentation is turned on
...
Previously in message-show mode message's first header line (From
header) was always indented, even if user had turned thread
indentation off with "<" (notmuch-show-toggle-thread-indentation)
command.
This change modifies notmuch-show-insert-headerline function so that
it doesn't indent the first header line if notmuch-show-indent-content
variable is nil.
This change also modifies tests so that they expect this new output
format:
test/emacs-show.expected-output/notmuch-show-indent-thread-content-off
2020-08-15 09:16:34 -03:00
Jonas Bernoulli
3665914f71
emacs: Do not abuse advice to monkey patch while testing
...
Use `cl-letf*' instead.
2020-08-09 21:17:06 -03:00
Jonas Bernoulli
96baa22318
emacs: Drop old advices that were only need for Emacs 23
2020-08-09 21:16:12 -03:00
Jonas Bernoulli
bb15524c12
test: Fix indentation
...
Fix it to consistently match the style we have configured in
".dir-locals.el".
2020-08-09 21:14:36 -03:00
Jonas Bernoulli
6c84dee531
Fix typos
2020-08-09 21:14:36 -03:00
Jonas Bernoulli
73b8f0b8d7
emacs: Various cosmetic changes
2020-08-09 21:14:36 -03:00
Jonas Bernoulli
c454135376
emacs: Use makefile-gmake-mode in Makefile*s
...
Use `makefile-gmake-mode' instead of `makefile-mode' because the
former also highlights ifdef et al. while the latter does not.
"./Makefile.global" and one "Makefile.local" failed to specify any
major mode at all but doing so is necessary because Emacs does not
automatically figure out that these are Makefiles (of any flavor).
2020-08-09 21:14:36 -03:00
Jonas Bernoulli
e1a700067a
emacs: Use 'when' instead of 'if' when there is no ELSE part
2020-08-09 20:52:34 -03:00
Jonas Bernoulli
09f6533c37
emacs: Use 'unless' instead of 'when' and 'not'
...
Also use 'unless' in a few cases where previously 'if' was used with
'not' but without an ELSE part.
2020-08-09 20:51:26 -03:00
Jonas Bernoulli
caaa108760
emacs: Fix indentation
2020-08-09 20:48:09 -03:00
Đoàn Trần Công Danh
f5ae8040b3
T355: specify hash algorithm explicitly
...
On some systems (notably, the one shipped with LibreSSL),
default fingerprint digest algorithm is SHA256.
On other systems, users can change default digest algorithm by changing
default_md in /etc/ssl/default_md.
Let's ask openssl to provide us specific algorithm to make the test
more deterministic.
Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
2020-08-08 16:04:27 -03:00
David Bremner
0e4695abaa
test: regression tests for n_indexopts_{get,set}_decrypt_policy
...
The main criteria is that they don't crash. Working with a closed
database is a bonus.
2020-08-03 21:05:29 -03:00
David Bremner
e3f88436b7
test: regression test for traversing config list with closed db
...
Also mention error return in API docs
2020-08-03 21:03:43 -03:00
David Bremner
a0b2a54aa7
test: regression test for n_d_get_config_list on closed db.
...
Exception is caught.
2020-08-03 21:01:53 -03:00
David Bremner
e8ffbf84ff
test: regression test for n_directory_{get,set}_mtime
...
The mtime is cached, so closing the db is not a problem. Writing the
mtime throws an exception, which is caught.
2020-08-03 21:00:25 -03:00
David Bremner
f4f5db0f1a
lib: fix return value for n_directory_delete
...
Falling out of the catch meant the error return was lost
2020-08-03 20:59:06 -03:00
David Bremner
b03cc6cf90
test: known broken test for n_directory_delete with closed db.
...
There is a return value bug in notmuch_directory_delete that is hiding
the exception.
2020-08-03 20:57:43 -03:00
David Bremner
337665e26a
lib: catch exceptions in n_directory_get_child_files
...
Also clarify API in error case.
2020-08-03 20:56:09 -03:00
David Bremner
3890d98966
test: add known broken test for n_directory_get_child_files
...
This is a clone of the one for get_child_directories
2020-08-03 20:54:26 -03:00
David Bremner
9668583a49
lib: catch exceptions in n_directory_get_child_directories
...
Also clarify API in error case.
2020-08-03 20:53:04 -03:00
David Bremner
919b89156c
test: add known broken test for n_directory_get_child_directories
...
Start a new test file (for the notmuch_directory_* API group) to hold
this test.
2020-08-03 20:51:40 -03:00
David Bremner
c151506773
test: regression test for n_m_get_filenames
...
Closing the database after the iterator is created is not a problem.
2020-08-03 20:50:15 -03:00
David Bremner
2b6e73d895
test: split header for lib-message tests.
...
This allows finer control over when to close the database.
2020-08-03 20:48:51 -03:00
David Bremner
e5e17926db
test: add regression test for n_messages_collect_tags
...
Also test n_messages_destroy.
2020-08-03 20:47:18 -03:00
David Bremner
31dab9b1cd
lib: return NULL from n_d_get_default_indexopts on error
...
This is a rare and probably serious programming error, so better not
to silently return a default value.
2020-08-03 20:45:58 -03:00
David Bremner
99a7aac8f2
test: drop use of db_ending
...
This will allow the dropping of the test for the default ending from
configure.
2020-08-01 20:27:30 -03:00
David Bremner
29a58ecf4a
test: drop NOTMUCH_DEFAULT_XAPIAN_BACKEND from T360-symbol-test
...
Inspired by the suggestion of
id:20200727154108.16269-3-congdanhqx@gmail.com
to drop the configuration test for the default backend. This version
is hopefully robust against backend changes.
2020-07-31 21:30:06 -03:00
David Bremner
00f48f397a
test: destroy thread from closed database
...
Check for (non)-crash.
2020-07-31 07:41:00 -03:00
David Bremner
864f422f14
test: regression test for n_thread_get_tags
...
Code is taken from the API docs, with the twist that the underlying
database is closed. Not crashing is the main point.
2020-07-31 07:41:00 -03:00
David Bremner
43406e7d4c
test: add regression tests for oldest and newest dates
...
These are strictly to watch for crashes, so don't be too fussy about
the actual timestamps.
2020-07-31 07:41:00 -03:00
David Bremner
c5017c76d9
test: add regression tests for n_t_get_{authors, subject}
...
This is returning explicitely cached data, so no database access is needed.
2020-07-31 07:41:00 -03:00
David Bremner
70b30066f6
test: add regression test for n_t_get_messages
...
This is similar to the case of toplevel messages. Currently everything
is cached, so no database access is necessary. This might change in
the future, but it should not crash in either case.
2020-07-31 07:41:00 -03:00
David Bremner
6ccc4338a4
test: add regression tests for n_thread_get_toplevel_messages
...
Include a test for the previously omitted non-trivial code path for
notmuch_thread_get_replies.
2020-07-31 07:41:00 -03:00
David Bremner
02ab473115
test: add regression test for n_thread_get_total_{messages,files}
...
This is returning cached info, so does not need to access the (closed)
database.
2020-07-31 07:41:00 -03:00
David Bremner
0baa581e6e
test: regression test for n_t_get_thread_id
...
This is just cached data, so as long as we don't prematurely free
anything, it should be fine.
2020-07-31 07:41:00 -03:00
David Bremner
46468baa5a
test: regression test for notmuch_query_destroy
...
As with other void API entries, not crashing counts as success.
2020-07-29 12:20:41 -03:00
David Bremner
451c0ce3fc
test: regression tests for n_q_count_{messages, threads}
...
At least these exceptions are caught.
2020-07-29 12:20:30 -03:00
David Bremner
0a4c6cdeb1
test: regression test for n_q_search_messages
...
Exception handling matches notmuch_query_search_threads, at least for
this case.
2020-07-29 12:20:22 -03:00
David Bremner
25fc8662ed
test: regression test for n_q_search_threads
...
At least this exception is caught.
2020-07-29 12:20:14 -03:00
David Bremner
4130b4e514
test: add regression test for n_q_add_tag_exclude
...
This relies on the change to not tear down the auxilary Xapian
objects, in particular the query parser, when the database is closed.
2020-07-29 12:20:06 -03:00
David Bremner
d5c84c8289
test: regression test for n_q_{set, get}_sort
...
We just want to make sure accessing the query owned by a closed db
does not cause a crash.
2020-07-29 12:19:57 -03:00
David Bremner
a292461e65
test: regression test for set_omit_excluded
2020-07-29 12:19:48 -03:00
David Bremner
768efe88d0
test: regression test for notmuch_query_get_database
...
Current functionality is too trivial to really justify a test, but
it's simpler just to test the complete API.
2020-07-29 12:19:39 -03:00
David Bremner
cbf9f890aa
test: add regression test for n_q_{create,_get_query_string}
...
Start a new file of tests, to keep to the (emerging) scheme of one
notmuch_foo group per file
2020-07-29 12:19:09 -03:00
David Bremner
85da95e266
test: move notmuch_message_* tests to their own file
...
This is for consistency with the recently added tests for
notmuch_database_*.
2020-07-29 12:18:11 -03:00
Jonas Bernoulli
8b162b40f8
test: Explicitly state that we want to sign with sender
...
Since Emacs 27 'mml-secure-epg-sign' errors out if we don't opt-in to
signing as the sender using 'mml-secure-openpgp-sign-with-sender'.
2020-07-28 08:40:30 -03:00