aboutsummaryrefslogtreecommitdiffstats
path: root/test (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Handle empty strings in Tramp's expand-file-name implementationsMichael Albinus2019-03-061-7/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp.el (tramp-handle-expand-file-name): * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name): * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name): * lisp/net/tramp-smb.el (tramp-smb-handle-expand-file-name): * lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-expand-file-name): Handle empty NAME. * test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax) (tramp-test01-file-name-syntax-simplified) (tramp-test01-file-name-syntax-separate): Use neutral IPv4 address. (tramp-test05-expand-file-name): Check also "." and "".
* | | Test an IPv4 mapped IPv6 address in TrampMichael Albinus2019-03-051-0/+13
| | | | | | | | | | | | | | | | | | | | | * test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax) (tramp-test01-file-name-syntax-simplified) (tramp-test01-file-name-syntax-separate): Check also an IPv4 mapped IPv6 address.
* | | Fix diff-mode tests after renaming diff-font-lock-refineCharles A. Roelli2019-03-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes tests broken in my last change, "Merge diff-font-lock-refine and diff-auto-refine-mode into diff-refine" from 2019-02-24. * test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock): Bind diff-refine to symbol 'font-lock' instead of binding diff-font-lock-refine to t. (diff-mode-test-font-lock-syntax-one-line): Bind diff-refine to nil instead of binding diff-font-lock-refine to nil.
* | | * test/lisp/progmodes/python-tests.elGlenn Morris2019-03-021-1/+2
| | | | | | | | | | | | (python-syntax-after-python-backspace): Expect success.
* | | rx: fix `or' ordering by adding argument to regexp-optMattias Engdegård2019-03-021-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The rx `or' form may reorder its arguments in an unpredictable way, contrary to user expectation, since it sometimes uses `regexp-opt'. Add a NOREORDER option to `regexp-opt' for preventing it from producing a reordered regexp (Bug#34641). * doc/lispref/searching.texi (Regular Expression Functions): * etc/NEWS (Lisp Changes in Emacs 27.1): Describe the new regexp-opt NOREORDER argument. * lisp/emacs-lisp/regexp-opt.el (regexp-opt): Add NOREORDER. Make no attempt at regexp improvement if the set of strings contains a prefix of another string. (regexp-opt--contains-prefix): New. * lisp/emacs-lisp/rx.el (rx-or): Call regexp-opt with NOREORDER. * test/lisp/emacs-lisp/rx-tests.el: Test rx `or' form match order.
* | | Adapt test names in tramp-archive-tests.elMichael Albinus2019-02-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | * test/lisp/net/tramp-archive-tests.el (tramp-archive-test39-make-nearby-temp-file) (tramp-archive-test42-file-system-info) (tramp-archive-test45-auto-load) (tramp-archive-test45-delay-load): Rename.
* | | Use proper read syntax for all function names in TrampMichael Albinus2019-02-282-60/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp.el: * lisp/net/tramp-adb.el: * lisp/net/tramp-archive.el: * lisp/net/tramp-cache.el: * lisp/net/tramp-cmds.el: * lisp/net/tramp-compat.el: * lisp/net/tramp-ftp.el: * lisp/net/tramp-gvfs.el: * lisp/net/tramp-integration.el: * lisp/net/tramp-rclone.el: * lisp/net/tramp-sh.el: * lisp/net/tramp-smb.el: * lisp/net/tramp-sudoedit.el: * test/lisp/net/tramp-archive-tests.el: * test/lisp/net/tramp-tests.el: Use proper read syntax for all function names.
* | | Fix mod-test build failurePaul Eggert2019-02-251-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem reported by Glenn Morris in: https://lists.gnu.org/r/emacs-devel/2019-02/msg00739.html * test/Makefile.in (HYBRID_MALLOC, LIBEGNU_ARCHIVE): New macros, taken from ../src/Makefile.in. (MODULE_CFLAGS): Add -I$(srcdir)/../lib. ($(test_module)): Link $(LIBEGNU_ARCHIVE) too.
* | | Ignore pending_signals when checking for quits.Philipp Stephani2019-02-242-1/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pending_signals is often set if no quit is pending. This results in bugs in module code if the module returns but no quit is actually pending. As a better alternative, add a new process_input environment function for Emacs 27. That function processes signals (like maybe_quit). * configure.ac: Add module snippet for Emacs 27. * src/module-env-27.h: New file. * src/emacs-module.h.in: Add process_input function to environment interface. * src/emacs-module.c (module_should_quit): Use QUITP macro to check whether the caller should quit. (module_process_input): New function. (initialize_environment): Use it. * src/eval.c: Remove obsolete comment. * test/data/emacs-module/mod-test.c (signal_wrong_type_argument) (signal_errno): New helper functions. (Fmod_test_sleep_until): New test module function. * test/src/emacs-module-tests.el (mod-test-sleep-until): New unit test. * doc/lispref/internals.texi (Module Misc): Document process_input.
* | | Handle HTML 'ol' start attribute in shr.elNicholas Drozd2019-02-222-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/shr.el (shr-tag-ol): Don't automatically assume 1-indexing for all ordered lists, use <ol> if given. * etc/NEWS: Announce change in shr behavior. * test/data/shr/ol.html: * test/data/shr/ol.txt: New test data files.
* | | Correct implementation of `sql-set-product-feature' (Bug#30494).Michael R. Mauger2019-02-201-56/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp.progmodes/sql.el (sql-add-product): Correct argument spec. (sql-set-product-feature): Handle all cases as intended. (sql-get-product-feature): Fetch varaiable value by `eval'. * test/lisp/progmodes/sql-tests.el (sql-test-feature-value-[a-d]): New test variables. (sql-test-product-feature-harness): New test macro. (sql-test-add-product, sql-test-add-existing-product) (sql-test-set-feature, sql-test-set-indirect-feature) (sql-test-set-existing-feature) (sql-test-set-existing-indirect-feature) (sql-test-set-missing-product, sql-test-get-feature) (sql-test-get-indirect-feature, sql-test-get-missing-product) (sql-test-get-missing-feature) (sql-test-get-missing-indirect-feature): New ERT tests
* | | Implement access-file in TrampMichael Albinus2019-02-192-8/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist): * lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist): * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): * lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist): * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist) * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): * lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist): Add `access-file'. * lisp/net/tramp-archive.el (tramp-archive-handle-access-file): * lisp/net/tramp.el (tramp-handle-access-file): New defun. (tramp-condition-case-unless-debug): Add declaration. (tramp-handle-insert-directory): * lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): * lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory): Check, whether directory is accessible. * test/lisp/net/tramp-archive-tests.el (tramp-archive-test17-insert-directory) (tramp-archive-test18-file-attributes): * test/lisp/net/tramp-tests.el (tramp-test17-insert-directory) (tramp-test18-file-attributes): Test error cases.
* | | * lisp/progmodes/sql.el: Added password wallet usingwalletMichael R. Mauger2019-02-181-0/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `auth-source' package. (sql-auth-source-search-wallet): New function. (sql-password-wallet): New variable. (sql-password-search-wallet-function): New variable. (sql-get-login): Handle password wallet search. (sql-product-interactive): Handle password function. * test/lisp/progmodes/sql-test.el: Test wallet changes. (sql-test-login-params): New test variable. (with-sql-test-connect-harness): New macro to wrap test configuration around calls to `sql-connect'. (sql-test-connect, sql-test-connect-password-func) (sql-test-connect-wallet-server-database) (sql-test-connect-wallet-database) (sql-test-connect-wallet-server): New ERT tests. * etc/NEWS: Updated SQL Mode descriptions.
* | | Increase timeout on emba for TrampMichael Albinus2019-02-181-1/+2
| | | | | | | | | | | | | | | | | | * test/lisp/net/tramp-tests.el (tramp--test-shell-command-to-string-asynchronously): Increase timeout on emba.
* | | Prevent over-eager rx character range condensationMattias Engdegård2019-02-161-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `rx' incorrectly considers character ranges between ASCII and raw bytes to cover all codes in-between, which includes all non-ASCII Unicode chars. This causes (any "\000-\377" ?Å) to be simplified to (any "\000-\377"), which is not at all the same thing: [\000-\377] really means [\000-\177\200-\377] (Bug#34492). * lisp/emacs-lisp/rx.el (rx-any-condense-range): Split ranges going from ASCII to raw bytes. * test/lisp/emacs-lisp/rx-tests.el (rx-char-any-raw-byte): Add test case. * etc/NEWS: Mention the overall change (Bug#33205).
* | | * test/lisp/textmodes/conf-mode-tests.el (conf-test-align-assignments):Glenn Morris2019-02-151-1/+1
| | | | | | | | | | | | Fix whitespace.
* | | Merge from origin/emacs-26Glenn Morris2019-02-151-0/+18
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | 3f4b8e9 * src/data.c (Fmake_local_variable): Fix bug#34318 b384996 Minor fixes in ELisp manual wrt syntax-table properties 71fc6d2 * admin/notes/emba: New file. 3aaa2d2 Fix Hunspell invocation for discovering its dictionaries # Conflicts: # test/src/data-tests.el
| * | * src/data.c (Fmake_local_variable): Fix bug#34318Stefan Monnier2019-02-121-0/+18
| | | | | | | | | | | | | | | | | | | | | Revert part of ed962f2b8a. * test/src/data-tests.el (data-tests-make-local-forwarded-var): Add corresponding test.
| * | Adapt filenotify-tests for embaMichael Albinus2019-01-071-49/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * .gitlab-ci.yml (test): Add EMACS_EMBA_CI variable. * test/lisp/filenotify-tests.el (file-notify-test03-events) (file-notify-test05-file-validity) (file-notify-test06-dir-validity) (file-notify-test07-many-events) (file-notify-test09-watched-file-in-watched-dir): Adapt tests for emba.
* | | Add basic conf-mode testsAlex Branham2019-02-151-0/+204
| | | | | | | | | | | | | | | * test/lisp/textmodes/conf-mode-tests.el: New file with tests for conf-mode. Mostly taken from conf-mode docstrings. (Bug#34419)
* | | Indent arrows’ expression bodies like function bodies (Bug#25904)Jackson Ray Hamilton2019-02-131-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/js.el (js--continued-expression-p): Don’t confuse ‘=>’ for a ‘>’ operator. (js--line-terminating-arrow-re): New variable. (js--looking-at-broken-arrow-function-p): New function. (js--proper-indentation): Don’t align arrow functions’ expression bodies starting on new lines like list continuations, instead align them like function bodies (js-indent-align-list-continuation need not be nil). * test/manual/indent/js.js: Add test for Bug#25904. Co-authored-by: Felipe Ochoa <felipe@fov.space>
* | | * test/lisp/emacs-lisp/package-tests.el: Allow extra extrasStefan Monnier2019-02-101-15/+51
| | | | | | | | | | | | | | | | | | | | | (package-test--compatible-p): New function. (package-test-desc-from-buffer, package-test-install-single): Use it. (package-x-test-upload-buffer, package-x-test-upload-new-version): Don't burp in presence of extra extras.
* | | Document that [:cntrl:] does not match DEL (Bug#34391)Mattias Engdegård2019-02-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/searching.texi (Character Classes): * lisp/emacs-lisp/rx.el (rx): Document that [:cntrl:] excludes DEL. * test/src/regex-emacs-tests.el (regex-tests-PTESTS-whitelist): Swap misplaced comments and fix wrong code for DEL.
* | | Fix network stream testsRobert Pluim2019-02-051-26/+34
| | | | | | | | | | | | | | | | | | | | | * test/lisp/net/network-stream-tests.el (make-ipv6-tcp-server-with-unspecified-port): Skip if IPv6 is not available. (make-ipv6-tcp-server-with-specified-port): Likewise. (echo-server-with-local-ipv6): Likewise.
* | | Use IPv6 localhost when family is 'ipv6Robert Pluim2019-02-041-2/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes Bug#34193 * src/process.c (Fmake_network_process): Explicitly use ::1 when using IPv6 with 'local. Update docstring. * test/lisp/net/network-stream-tests.el (make-ipv6-tcp-server-with-unspecified-port): (make-ipv6-tcp-server-with-specified-port): Test creating ipv6 local server. (make-server): Add optional family argument, default ipv4 (echo-server-with-local-ipv4): Test connecting to 'local ipv4 (echo-server-with-local-ipv6): Test connecting to 'local ipv6 * doc/lispref/processes.texi (Network Processes): Describe behavior when using 'local. * etc/NEWS: Document new 'make-network-process' behavior when connecting to 'local with ipv6.
* | | * lisp/tar-mode.el (tar-extract): Call tar--try-jka-compr (bug#34251)Juri Linkov2019-02-035-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/tar-mode.el (tar--try-jka-compr): New function copied from archive-try-jka-compr. * lisp/arc-mode.el (archive-try-jka-compr): Set buffer-multibyte to t instead of let-binding coding-system-for-read to 'no-conversion. * test/data/decompress/tg.tar.gz: * test/data/decompress/zg.zip: New fixtures. * test/lisp/arc-mode-tests.el (arc-mode-test-zip-extract-gz): * test/lisp/tar-mode-tests.el (tar-mode-test-tar-extract-gz): New tests. * test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock) (diff-mode-test-font-lock-syntax-one-line): Skip unless shell and diff executables are found.
* | | Work on accept-process-output in TrampMichael Albinus2019-02-031-42/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp.el (tramp-accept-process-output): Rework timer handling. (tramp-call-process): Adapt VEC if nil. (tramp-interrupt-process): Use `tramp-accept-process-output'. (tramp-process-lines): New defun. * lisp/net/tramp-adb.el (tramp-adb-parse-device-names): * lisp/net/tramp-rclone.el (tramp-rclone-parse-device-names): Use it. * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch): Use timeout 0 in `tramp-accept-process-output'. * test/lisp/net/tramp-tests.el (tramp--test-timeout-handler): Move up. (tramp-test29-start-file-process, tramp-test30-make-process) (tramp-test32-shell-command) (tramp--test-shell-command-to-string-asynchronously): Use it. (tramp-test35-remote-path): Suppress warning. (tramp--test-asynchronous-requests-timeout): New defconst. (tramp-test43-asynchronous-requests): Skip if not the only test. Use `tramp--test-asynchronous-requests-timeout'. Remove instrumentation. Use `start-process-shell-command' for watchdog. Add timeout in timer function. Print status messages. Remove file operations from sentinel. Suppress timers in `accept-process-output'.
* | | * test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock): New test.Juri Linkov2019-02-025-0/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (diff-mode-test-font-lock-syntax-one-line): New test for one line. * test/data/vc/diff-mode/hello_world.c: * test/data/vc/diff-mode/hello_world_1.c: * test/data/vc/diff-mode/hello_emacs.c: * test/data/vc/diff-mode/hello_emacs_1.c: New fixtures. * lisp/vc/diff-mode.el (diff-syntax-fontify): Move remove-overlays from diff-syntax-fontify-hunk. (Bug#33567) (diff-syntax-fontify-hunk): Remove VISIT arg from insert-file-contents.
* | | Make the rx operators \? and \?? behave correctlyMattias Engdegård2019-02-011-0/+23
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/rx.el (rx-kleene): Treat \? and \?? like ? and ?? (Bug#34100). * test/lisp/emacs-lisp/rx-tests.el: Add tests for all repetition operators.
* | | js--re-search-backward-inner: Fix infloopDmitry Gutov2019-02-011-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix JS indentation infloop reported in https://github.com/mooz/js2-mode/issues/513. * lisp/progmodes/js.el (js--re-search-backward-inner): Account for multiline string literals. * test/manual/indent/js.js: New test example.
* | | Fix problem in filenotify-testsMichael Albinus2019-01-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch): Adapt `accept-process-output' argument. * test/lisp/filenotify-tests.el (file-notify--deftest-remote): Remove :unstable tag.
* | | ; Fix previous commitMichael Albinus2019-01-301-0/+1
| | |
* | | * test/lisp/net/tramp-tests.elMichael Albinus2019-01-301-3/+2
| | | | | | | | | | | | | | | (tramp-test43-asynchronous-requests): Tag it :unstable also for emba. Adapt `accept-process-output' arguments.
* | | * test/lisp/filenotify-tests.el (file-notify--deftest-remote):Michael Albinus2019-01-291-1/+1
| | | | | | | | | | | | Tag as :unstable.
* | | Adapt `accept-process-output' arguments in tramp-testsMichael Albinus2019-01-292-24/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | * test/lisp/net/tramp-tests.el (tramp-test29-start-file-process) (tramp-test30-make-process, tramp-test31-interrupt-process) (tramp-test32-shell-command) (tramp--test-shell-command-to-string-asynchronously) (tramp-test43-asynchronous-requests): Adapt `accept-process-output' arguments.
* | | * test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults): Adapt test.Michael Albinus2019-01-281-8/+6
| | |
* | | Fix bug with face-id after restoring from pdumpEli Zaretskii2019-01-281-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/xfaces.c (init_xfaces): New function. * src/emacs.c (main) [HAVE_PDUMPER]: If dumped with pdumper, call init_xfaces. (Bug#34226) * src/lisp.h (init_xfaces) [HAVE_PDUMPER]: Add prototype. * test/lisp/faces-tests.el (faces--test-face-id): New test for bug#34226.
* | | forward-line now works with bignumsPaul Eggert2019-01-271-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/cmds.c (Fforward_line): Support bignum arg. (scan_newline): Return void since no caller was using the return value. * src/search.c (find_newline, scan_newline_from_point) (find_newline1): Return the number of newlines counted, not the count shortage, so that the return value always fits in ptrdiff_t even if the original count was a bignum. All callers changed. * test/src/cmds-tests.el (forward-line-with-bignum): New test.
* | | ; Remove tramp-tests instrumentationMichael Albinus2019-01-241-4/+2
| | |
* | | Check for client certificates when using GnuTLSRobert Pluim2019-01-241-0/+367
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes Bug#33780, and extends the documentation to describe how to enable use of client certificates. * lisp/net/network-stream.el (network-stream-certificate): Correct order of parameters to plist-get. (network-stream-open-tls): Pass all received parameters to open-gnutls-stream as plist, not just :nowait. * lisp/net/gnutls.el (open-gnutls-stream): Change optional nowait arg to be plist. Derive nowait and client certificate(s) and keys(s) from plist (maybe via auth-source) and pass to gnutls-boot-parameters and gnutls-negotiate. (network-stream-certificate): Add declare-function form for it. * doc/misc/auth.texi (Help for users): Describe format to use for client key/cert specification. * doc/misc/emacs-gnutls.texi (Help For Developers): Describe usage of optional plist argument. Add crossreference to description of .authinfo format for client key/cert specification. * etc/NEWS: Describe new client certificate functionality for 'open-network-stream'. * test/lisp/net/network-stream-tests.el: Add require of network-stream. (connect-to-tls-ipv4-nowait): Bind network-security-level to 'low in order to bypass nsm prompting. (connect-to-tls-ipv6-nowait): Likewise. (open-network-stream-tls-wait): New test. (open-network-stream-tls-nowait): New test. (open-network-stream-tls): New test. (open-network-stream-tls-nocert): New test. (open-gnutls-stream-new-api-default): New test. (open-gnutls-stream-new-api-wait): New test. (open-gnutls-stream-old-api-wait): New test. (open-gnutls-stream-new-api-nowait): New test. (open-gnutls-stream-old-api-nowait): New test. (open-gnutls-stream-new-api-errors): New test. The new tests exercise 'open-network-stream' and the old and new api of 'open-gnutls-stream'.
* | | ; More instrumentation of tramp-tests.el for hydraMichael Albinus2019-01-231-2/+2
| | | | | | | | | | | | | | | * test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case): Adapt docstring.
* | | ; Instrument tramp-tests.el for hydra.Michael Albinus2019-01-231-1/+2
| | |
* | | * lisp/net/tramp.el (tramp-set-file-uid-gid): Fix thinko.Michael Albinus2019-01-231-14/+13
| | | | | | | | | | | | | | | * test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case): Adapt docstring.
* | | ; Further tramp-tests instrumentationMichael Albinus2019-01-231-9/+9
| | |
* | | ; Instrument tramp-testsMichael Albinus2019-01-231-1/+2
| | |
* | | electric-layout-mode kicks in before electric-pair-modeJoão Távora2019-01-221-7/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This aims to solve problems with indentation. Previously in, say, a js-mode buffer with electric-layout-rules set to (?\{ before after) (?\} before) would produce an intended: function () { <indented point> } The initial state function () { Would go immediately to the following by e-p-m function () {} Only then would e-l-m be applied to } first, and then again to {. This makes lines indent in the wrong order, which can be a problem in some modes. The way we fix this is by reversing the order of e-p-m and e-l-m in the post-self-insert-hook (and also fixing a number of details that this uncovered). In the end this changes the sequence from function () { By way of e-l-m becomes: function () <newline> { <newline> The e-p-m inserts the pair function () <newline> { <newline>} And then e-l-m kicks in for the pair again, yielding the desired result function () <newline> { <indented point> } * lisp/elec-pair.el (electric-pair--insert): Bind electric-layout-no-duplicate-newlines. (electric-pair-inhibit-if-helps-balance) (electric-pair-skip-if-helps-balance): Use insert-before-markers, playing nice with save-excurion. (electric-pair-post-self-insert-function): Go to correct position before checking electric-pair-inhibit-predicate and electric-pair-skip-self predicate. (electric-pair-post-self-insert-function): Increase priority to 50. * lisp/electric.el (electric-indent-post-self-insert-function): Delete trailing space in reindented line only if line was really reindented. Rewrite comment. (electric-layout-allow-duplicate-newlines): New variable. (electric-layout-post-self-insert-function-1): Rewrite comments. Honours electric-layout-allow-duplicate-newlines. Don't reindent previous line because racecar. * test/lisp/electric-tests.el: New test. (plainer-c-mode): Move up. (electric-modes-int-main-allman-style) (electric-layout-int-main-kernel-style): Simplify electric-layout-rules. (electric-layout-for-c-style-du-jour): New helper. (electric-layout-plainer-c-mode-use-c-style): New test.
* | | Remove tests of electric-pair-mode and CC-based modesJoão Távora2019-01-221-20/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The behaviour previously observed in cc-mode-based-modes (and every other major-mode) when electric-pair-mode or electric-layout-mode is turned on may no longer be observed: this because CC-mode goes around the generic implementation of electric-pair-mode. An alternative is to bind every delimiter key like '{', '}', etc to 'self-insert-command, like most major modes already do, at the cost of losing c-auto-newline functionality (which was incompatible anyway before the recent changes of bug#33794). * test/lisp/electric-tests.el (electric-pair-test-for): No longer set it. (define-electric-pair-test): Use js-mode instead of c++ mode, which broke recently. (whitespace-chomping-2): Add failing C++ test explicitly. (electric-layout-int-main-kernel-style): Use plainer-c-mode. (electric-layout-int-main-allman-style): Deleted. (electric-modes-int-main-allman-style): Renamed from electric-layout-int-main-allman-style.
* | | Revert "Fix electric-pair-tests by disabling bug#33794's fix with a variable"Alan Mackenzie2019-01-221-6/+0
| | | | | | | | | | | | This reverts commit be505726b68d407a44fdcd9c7ac1ef722398532d.
* | | Make Tramp tests more robustMichael Albinus2019-01-221-4/+15
| | | | | | | | | | | | | | | | | | | | | * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name): Bind `tramp-default-method'. (tramp--test-file-attributes-equal-p): New defsubst. (tramp-test19-directory-files-and-attributes): Use it.
* | | Improve error data when passing a wrong type to 'sort' (Bug#34104)Philipp Stephani2019-01-201-1/+4
| | | | | | | | | | | | | | | | | | | | | * src/fns.c (Fsort): Use 'list-or-vector-p' for error message. (syms_of_fns): Define 'list-or-vector-p'. * test/src/fns-tests.el (fns-tests-sort): Extend unit test.