Commit graph

2352 commits

Author SHA1 Message Date
Paul Eggert
e3bcd115d2 Port data-tests-popcnt to 32-bit Emacs
* test/src/data-tests.el (data-tests-popcnt):
Don’t assume Emacs integers can represent 32-bit quantities.
Change to a simple and straightforward approach, since runtime
performance is not important here.
2018-12-11 14:17:56 +08:00
Paul Eggert
246460c157 Add tests for Bug#30408
* test/src/editfns-tests.el (format-%d-large-float)
(format-%x-large-float, format-%o-invalid-float): New tests.
2018-12-11 14:17:56 +08:00
Glenn Morris
8d80db1230 Quieten eieio-test compilation
* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el:
* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el:
* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el:
Remove obsolete name args where not being explicitly tested.
2018-12-11 14:17:56 +08:00
Michael Albinus
aa2ebecbdb Extend Tramp's UTF8 tests
* test/lisp/net/tramp-tests.el (tramp--test-utf8):
Apply more exhaustive tests.
2018-12-11 14:17:53 +08:00
Paul Eggert
b2b31ae8bd ; Spelling fix 2018-12-11 14:17:52 +08:00
Glenn Morris
d5087f9e7e ; * test/lisp/info-xref-tests.el: Remove stray line from previous. 2018-12-11 14:17:52 +08:00
Glenn Morris
a3605b6477 * test/lisp/info-xref-tests.el (info-xref-test-emacs-manuals): New. 2018-12-11 14:17:52 +08:00
Michael Albinus
10794c813d Print top time consuming tests if advised
* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
New argument HIGH.  Print top-running tests.

* test/Makefile.in (check-doit): Use ${SUMMARIZE_TESTS}.

* test/README: Explain SUMMARIZE_TESTS.
2018-12-11 14:17:51 +08:00
Basil L. Contovounesios
537ed97e9c Pass json-readtable-error data as a list (bug#30489)
* lisp/json.el (json-readtable-dispatch): Fix error data.
* test/lisp/json-tests.el (test-json-read): Check error data is a
list.
2018-12-11 14:17:51 +08:00
Nicolas Petton
513b7fccd2 Fix compilation warnings in subr-x-tests.el
* test/lisp/emacs-lisp/subr-x-tests.el (subr-x-test-if-let*-false)
(subr-x-test-when-let*-false): Make tests simpler and compiler warning
free.
2018-12-11 14:17:51 +08:00
Nicolas Petton
a684aeb11e Add URL handler for file-name-directory (Bug#30444)
* lisp/url/url-handlers.el (url-handler-file-name-directory): New
function which handles special cases for `file-name-directory' and
URLs.
* test/lisp/url/url-handlers-test.el: New file.  Add tests for
`url-handler-file-name-directory'.
2018-12-11 14:17:51 +08:00
Michael Albinus
59a41b8c38 Optimize tramp-tests.el
* test/lisp/net/tramp-tests.el (tramp--test-expensive-test):
Make it a defsubst.  Adapt all callees.
(tramp--test-print-duration): New defmacro.
(tramp-test11-copy-file, tramp-test12-rename-file)
(tramp-test21-file-links, tramp--test-special-characters):
Run some parts only if expensive tests are enabled.  (Bug#30807)
2018-12-11 14:17:51 +08:00
Michael Albinus
08b32c91fc Print test timings unconditionally
* lisp/emacs-lisp/ert.el (ert-batch-print-duration): Remove.
(ert-run-tests-batch): Adapt accordingly.

* test/Makefile.in:
* test/README: Remove TEST_PRINT_TEST_DURATION.
2018-12-11 14:17:51 +08:00
Michael Albinus
23fb2521f4 Optimize "make check" and "make check-maybe"
* lisp/emacs-lisp/ert.el (ert-run-tests-batch): Print summary duration.

* test/Makefile.in (TEST_LOAD_EL): Set default to "no" for
targets all, check, and check-maybe.  (Bug#30807)

* test/README: Reflect recent changes in Makefile.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test99-libarchive-tests): Tag it :unstable.
2018-12-11 14:17:50 +08:00
Glenn Morris
e2aebb9aac * test/lisp/ses-tests.el: Quieten compilation. 2018-12-11 14:17:31 +08:00
Eli Zaretskii
dca8b75f74 Support variable-unquoting syntax in bat-mode
* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Fontify
argument numbers in %~n.  Suggested by Jostein Kjønigsen
<jostein@secure.kjonigsen.net> in emacs-devel.

* test/lisp/progmodes/bat-mode-tests.el
(bat-test-fontification-iter-var-1): Update the test to check also
the %~n construct.
2018-12-11 14:17:30 +08:00
Michael Albinus
d27fdc54d8 Fix an error in tramp-archive-test42-auto-load
* test/lisp/net/tramp-archive-tests.el (tramp-archive-test42-auto-load):
Do not use "/ssh::" as test directory, it could harm.  (Bug#30807)
2018-12-11 14:17:30 +08:00
Michael Albinus
c4bd17e170 ; * test/README: Fix typo 2018-12-11 14:17:30 +08:00
Michael Albinus
e3338f2933 Extend ert to print duration of single tests
* lisp/emacs-lisp/ert.el (ert-test-result): New slot ´duration'.
(ert-run-or-rerun-test): Set it.
(ert-batch-print-duration): New defvar.
(ert-run-tests-batch): Print duration if needed.

* test/Makefile.in (TEST_PRINT_TEST_DURATION): New variable.

* test/README: Explain TEST_PRINT_TEST_DURATION.
2018-12-11 14:17:30 +08:00
Noam Postavsky
77bf8e00b7 Fix line-wrapping for term.el (Bug#30775)
* lisp/term.el (term-emulate-terminal): Leave line-wrapping state if
point was moved after we entered it.
* test/lisp/term-tests.el (term-line-wrapping-then-motion): New test.
2018-12-11 14:17:30 +08:00
Glenn Morris
2544299c64 Try to stop tramp test hangs on hydra
* test/lisp/net/tramp-tests.el (tramp-test41-asynchronous-requests):
Use fewer processes on hydra.
2018-12-11 14:17:30 +08:00
Noam Postavsky
02b297bef0 ; Revert "; Tracing for eieio-test random failure (Bug#24503)"
The tracing seems to prevent the bug from happening.
2018-12-11 14:15:03 +08:00
Glenn Morris
954d7cec7c * test/Makefile.in (check-declare): New PHONY rule. 2018-12-11 14:15:02 +08:00
Glenn Morris
9be7eb4ff9 Quieten --without-json compilation of json-tests.el
* test/src/json-tests.el (json-serialize, json-insert)
(json-parse-string, json-parse-buffer): Declare.
2018-12-11 14:15:02 +08:00
Glenn Morris
97e6ea57c5 * test/lisp/vc/vc-tests.el (w32-application-type): Fix declaration. 2018-12-11 14:15:02 +08:00
Glenn Morris
17d92f5412 Quieten compilation of some test/lisp files
* test/lisp/dired-tests.el (dired-test-bug27243-02)
(dired-test-bug27243-03, dired-test-bug27899)
(dired-test-with-temp-dirs): Remove unused local variables.
* test/lisp/hi-lock-tests.el (hi-lock-bug26666)
(hi-lock-test-set-pattern): Mark unused arguments.
* test/lisp/ses-tests.el (ses-tests-renamed-cells-row-insertion):
Remove unused global "ses-tests-trigger".
* test/lisp/simple-tests.el (line-number-at-pos-when-passing-point):
Remove unused local "pos".
* test/lisp/emacs-lisp/benchmark-tests.el (benchmark-tests):
Pacify compiler.
* test/lisp/emacs-lisp/package-tests.el (package-test-signed):
Replace obsolete function epg-configuration.
* test/lisp/ls-lisp-tests.el:
* test/lisp/eshell/em-ls-tests.el: Require dired.
* test/lisp/progmodes/ruby-mode-tests.el
(ruby-forward-sexp-skips-method-calls-with-keyword-names):
* test/lisp/vc/diff-mode-tests.el
(diff-mode-test-ignore-trailing-dashes): Replace interactive funcs.
2018-12-11 14:15:02 +08:00
Michael Heerdegen
52b144295a Revert last commit
This reverts commit af4697faa1.  It's
too late for this to be in the release.
2018-12-11 14:14:00 +08:00
Michael Heerdegen
a381e7e05c Define if-let* and derivatives as aliases for if-let etc
This commit reverts declaring `if-let' and `when-let' obsolete in
favor of the new `if-let*' and `when-let*' versions because of the
compiler warning mess (Bug#30039).  Instead we make foo-let* aliases
for foo-let.  The old single-tuple variable spec case is still
supported for backward compatibility.
* lisp/emacs-lisp/subr-x.el (if-let, when-let): Don't declare
obsolete.  Tweak edebug specs.
(and-let): Renamed from `and-let*' for compatibility with the names
`if-let' and `when-let'.
(if-let*, when-let*, and-let*): Define as aliases for `if-let',
`when-let' and `and-let'.
* test/lisp/emacs-lisp/subr-x-tests.el (if-let-single-tuple-case-test)
(when-let-single-tuple-case-test): New tests for the single-binding
tuple case.
In the whole file, prefer the names without "*".
2018-12-11 14:14:00 +08:00
Andrew G Cohen
0e48e63770 Merge from master 2018-03-06 05:12:28 +08:00
Stefan Monnier
9793a46168 * test/lisp/emacs-lisp/package-tests.el: Improve signature tests
(package-test-signed): Don't rely on return value of 'package-install'.
Make sure 'package-install' does indeed install the package.
2018-02-22 17:00:00 -05:00
Glenn Morris
3267763e6b Speed up parallel make check by testing slower files first
* test/Makefile.in (SLOW_TESTS): New variable.
(ELFILES): Move slow tests to the front.
2018-02-21 20:49:40 -05:00
Glenn Morris
4fa90ff8f5 Merge from origin/emacs-26
e5a2933 (origin/emacs-26) lisp/vc/: documentation fixes
f21f8e6 Document 'desktop-files-not-to-save'
d8917eb Improve documentation of Profiling features
b228839 Improve indexing of "performance" in ELisp manual
ab67b3e Minor change in Emacs manual's VC chapter
c352434 Avoid memory corruption with specpdl overflow + edebug (Bug#3...
593bbda Document comment-fill-column in the manual (Bug#11636)
bd4cc8d * doc/emacs/dired.texi (Marks vs Flags): Copyedits.
69107f3 ; Fix doc typos related to indefinite articles
aaad1e6 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
5906418 More fixes for the Emacs manual
9ab3df1 ; Fix doc typos related to indefinite articles
66a4e65 ; Fix doc typos related to indefinite articles
35e5c57 ; Fix doc typos related to indefinite articles
2018-02-17 07:50:28 -08:00
Allen Li
0f5cc9a085 Preserve special abbrev properties when writing
Fixes bug#29924

* lisp/abbrev.el (abbrev--write): Write abbrev properties when set.
2018-02-17 08:47:20 -05:00
Noam Postavsky
c352434ab8 Avoid memory corruption with specpdl overflow + edebug (Bug#30481)
If grow_specpdl fails due to outgrowing max_specpdl_size, it will
signal an error *before* growing the specpdl array.  Therefore, when
handling the signal, specpdl_ptr points past the end of the specpdl
array and any further use of of specpdl before unwinding (e.g., if
edebug binds signal-hook-function) will cause memory corruption.
* src/eval.c (signal_or_quit): Don't call `signal-hook-function' if
the specpdl_ptr is already past the end of the specpdl array.
* test/src/eval-tests.el (eval-tests--exceed-specbind-limit)
(eval-exceed-specbind-with-signal-hook): New test & helper function.
2018-02-16 22:13:34 -05:00
Noam Postavsky
82379efaaf ; Add test for iter-lambda variable shadowing (Bug#26073)
* test/lisp/emacs-lisp/generator-tests.el
(iter-lambda-variable-shadowing): New test.
2018-02-14 21:31:06 -05:00
Glenn Morris
875cb835f0 Merge from origin/emacs-26
0276743 (origin/emacs-26) Doc string fix in latin-alt.el
c9269af Minor improvements in package.texi
898a3e4 Minor improvement in Emacs user manual
8f7d718 * doc/lispref/anti.texi (Antinews): Replace 25.2 with 25.3.
989d0af Improve documentation of mini-window resizing
923e415 More changes in the Emacs manual
565adf2 Clarify that text-quoting-style doesn't affect *Info* (Bug#24...
2dd273b Mention that shell quoting of % on w32 may fail (Bug#19350)
19fa6d5 Fix --no-build-details for w32 and macOS
979944c * doc/lispref/anti.texi (Antinews): Add some more antinews.
c2727e3 Fix crashes when run with --no-build-details
dc08490 More changes for the manual
04c5bd5 Doc fixes for process functions (Bug#30349)
e209034 Fix shr and CSS 4 color maps
5fe8192 Yet another round of improvements in the manual

Conflicts:
	doc/emacs/files.texi
	test/lisp/subr-tests.el
2018-02-09 11:12:48 -08:00
Stefan Monnier
6b183f85e0 * lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand): Handle lambda!
(cl--old-macroexpand): Remove.
(cl--sm-macroexpand): Change its calling convention, so it can use
advice-add.  Extend re-binding treatment of vars so it applies to all
var-introducing forms rather than only to 'let'.
(cl-symbol-macrolet): Use advice-add rather than fset.
2018-02-08 21:41:21 -05:00
Noam Postavsky
2dd273b985 Mention that shell quoting of % on w32 may fail (Bug#19350)
* doc/lispref/os.texi (Security Considerations): Mention that quoting
of '%' assumes no '^' in variable names.
* test/lisp/subr-tests.el (shell-quote-argument-%-on-w32): New test,
demonstrating what doesn't work.
2018-02-08 19:10:11 -05:00
Basil L. Contovounesios
e209034536 Fix shr and CSS 4 color maps
* lisp/net/shr-color.el (shr-color-html-colors-alist): Fix typos.
Add RebeccaPurple.
* lisp/textmodes/css-mode.el (css--color-map): Add fuchsia-magenta
and aqua-cyan aliases.
* test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
Bump color count.
2018-02-07 22:14:00 +01:00
Glenn Morris
a0c7157a16 Merge from origin/emacs-26
c787a49 (origin/emacs-26) * lisp/vc/vc-git.el (vc-git-print-log): Res...
b654791 * doc/emacs/misc.texi (Interactive Shell): Refer to node "Min...
f1102d2 Yet another round of fixing the Emacs manual
76b5a68 * etc/NEWS: Expunge the solecism "allow(s)" + infinitive
b4ff8cc Two minor fixes in Antinews
aafcd12 * etc/NEWS: Rename image-dired-thumb-job-limit
a893924 * lisp/simple.el (async-shell-command, shell-command): Fix gr...
699081f Fix deferred display of async shell-command buffers
d2d5e54 Mention remote file name completion in Emacs manual
f589f5a Yest another round of manual copyedits
1ed4089 Update xdisp.c commentary
e23de39 Fix Bug#30324
e1a9dc0 Recognize Org as builtin package (bug#30310)

Conflicts:
	etc/NEWS
2018-02-05 07:50:22 -08:00
Michael Albinus
c24c5dc4a4 Fix inconsistency expanding "//" in Tramp
* doc/misc/tramp.texi (File name completion): Adapt example
expanding "//".

* lisp/net/tramp.el (tramp-handle-substitute-in-file-name): "//" shall
expand the localname only, even when on top of the local part.

* test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name):
Adapt test.
2018-02-05 14:02:49 +01:00
Michael Albinus
d2630e4569 Make tramp-archive fit for older Emacsen
* lisp/net/tramp-archive.el (tramp-archive-enabled)
(tramp-archive-file-name-handler-alist)
(tramp-archive-file-name-handler): Adapt docstring.
(tramp-register-archive-file-name-handler): Remove it from
`after-init-hook' when unloading.
(tramp-archive-gvfs-host): New defsubst.
(tramp-archive-dissect-file-name): Use it.

* lisp/net/tramp-cmds.el (tramp-cleanup-all-connections):
Check that `tramp-archive-enabled' is bound.

* test/lisp/net/tramp-archive-tests.el (tramp-archive-test42-auto-load):
Check also that tramp-archive is not loaded when Tramp is loaded.
(tramp-archive-test42-delay-load): Adapt test messages.
2018-02-04 13:25:10 +01:00
Philipp Stephani
a34c7d7470 Add tests to verify error propagation in 'json-insert'.
* test/src/json-tests.el (json-tests--error): New error symbol.
(json-insert/signal, json-insert/throw): New tests.
2018-02-03 21:14:59 +01:00
Noam Postavsky
9da8da2c41 Don't require all file-attributes to be equal (Bug#30327)
* test/lisp/files-tests.el (files-tests-file-attributes-equal): New
function.
(files-tests-file-name-non-special-directory-files-and-attributes)
(files-tests-file-name-non-special-file-attributes): Use it instead of
`equal'.
2018-02-03 14:36:14 -05:00
Michael Albinus
a057771a5a * test/lisp/files-tests.el (files-tests--with-temp-non-special):
Expand `temporary-file-directory' by `file-truename', in case
it is located on a symlinked directory.  (Bug#30327)
2018-02-03 20:08:29 +01:00
Michael Albinus
a2cb52cd2e Prevent loading tramp-archive when it cannot be used
* lisp/files.el (locate-dominating-file): Check, that FILE is
a directory when traversing the tree.

* lisp/net/tramp-archive.el (tramp-archive-enabled): New defvar.
(tramp-archive-file-name-regexp): Protect against errors.
(tramp-archive-file-name-handler)
(tramp-register-archive-file-name-handler): Use it.
(all) Call `tramp-register-archive-file-name-handler'.

* lisp/net/tramp.el (tramp-register-file-name-handlers):
Use `tramp-archive-enabled'.

* test/lisp/net/tramp-archive-tests.el (all):
Use `tramp-archive-enabled' instead of `tramp-gvfs-enabled'.
(tramp-archive--test-emacs27-p): New defun.
(tramp-archive-test42-auto-load): Skip for older Emacsen.
(tramp-archive-test42-delay-load): Skip for older Emacsen.
Test also behavior when `tramp-archive-enabled' is nil.
2018-02-03 18:49:56 +01:00
Andrew G Cohen
f8627cfbc5 merge from master 2018-02-03 20:35:43 +08:00
Michael Albinus
84c9dba4ce Autoload tramp-archive
* doc/misc/tramp.texi (Archive file names): Do not require to
load Tramp explicitly, this is autoloaded now also for file archives.

* lisp/net/tramp-archive.el (tramp-archive-suffixes)
(tramp-archive-compression-suffixes): Autoload them.
(tramp-archive-autoload-file-name-regexp): New defmacro.
(tramp-archive-file-name-regexp): Use it.
(tramp-register-archive-file-name-handler): New defun.  Call
it in `after-init-hook'.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test40-file-system-info): Rename from
`tramp-archive-test40-archive-file-system-info.
(tramp-archive-test42-auto-load)
(tramp-archive-test42-delay-load): New tests.
2018-02-03 13:22:56 +01:00
Glenn Morris
e1a9dc0af6 Recognize Org as builtin package (bug#30310)
* lisp/org/org.el: Add Version header so detected as builtin package.
* test/lisp/org/org-tests.el: New file.
2018-02-02 21:09:09 -05:00
Noam Postavsky
2b288eb900 ; Merge from emacs-26
4c8157cfe0 ; Let files-tests.el pass multiple times in a session
99251ab62e ; Avoid process kill query during term tests
2018-02-02 18:12:37 -05:00