1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-10 13:40:36 -08:00
Commit graph

1657 commits

Author SHA1 Message Date
Vibhav Pant
cb410433e0 Merge branch 'master' into feature/byte-switch 2017-02-13 17:07:36 +05:30
Vibhav Pant
c24e8290fa test/lisp/emacs-lisp/bytecomp-tests.el: Add more tests for switch. 2017-02-13 13:18:54 +05:30
Paul Eggert
d4429dfd49 Fix typos in tests for lax-plist-get etc.
Problem reported by Eli Zaretskii (Bug#25606#62).
* test/src/fns-tests.el (test-cycle-lax-plist-get)
(test-cycle-plist-put, test-cycle-lax-plist-put):
Fix tests to match behavior.
2017-02-12 12:55:29 -08:00
Tom Tromey
862d6438cf Recognize JS regexp literals more correctly
Bug#25529
* lisp/progmodes/js.el (js--syntax-propertize-regexp-regexp): New
constant.
(js-syntax-propertize-regexp): Use it.  Remove "end" argument.
(js--syntax-propertize-regexp-syntax-table): Remove.
(js-syntax-propertize): Update.
* test/lisp/progmodes/js-tests.el (js-mode-regexp-syntax-bug-25529):
New test.
2017-02-11 12:30:32 -07:00
Tom Tromey
c2e19a7340 Fix bug in css--mdn-find-symbol
* lisp/textmodes/css-mode.el (css--mdn-find-symbol): Skip whitespace
before skipping word characters.
test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): Add
regression test.
2017-02-11 08:43:47 -07:00
Vibhav Pant
c1a9b5db0e Merge branch 'master' into feature/byte-switch 2017-02-11 19:54:37 +05:30
Paul Eggert
65298ff4d5 Move cyclic tests to fns-tests.el
* test/src/fns-tests.el (cyc1, cyc2, dot1, dot2): New functions.
(test-cycle-length, test-cycle-safe-length, test-cycle-member)
(test-cycle-memq, test-cycle-memql, test-cycle-assq)
(test-cycle-assoc, test-cycle-rassq, test-cycle-rassoc)
(test-cycle-delq, test-cycle-delete, test-cycle-reverse)
(test-cycle-plist-get, test-cycle-lax-plist-get)
(test-cycle-plist-member, test-cycle-plist-put)
(test-cycle-lax-plist-put, test-cycle-equal, test-cycle-nconc):
New tests.
* test/manual/cyclic-tests.el: File deleted.
2017-02-10 11:52:41 +02:00
Vladimir Panteleev
2d284db5c9 Improve fontification in bat-mode
* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Match
word and symbol constituents when looking for variable names
to fontify; also, correct the syntax table and mark the equal
sign (=) character as punctuation.  Improve fontification
accuracy of iteration/positional variables.
(bat-mode): Set comment-start-skip.  (Bug#25541)

* test/lisp/progmodes/bat-mode-tests.el: New file, tests for
bat-mode.el.
2017-02-10 11:23:24 +02:00
Michael Albinus
e3b6596308 Modify suppressing `vc-refresh-state' in filenotify-tests.el
* test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
Use an advice rather than an alias for suppressing `vc-refresh-state'.
2017-02-08 19:33:52 +01:00
Michael Albinus
c8ee570a8b Suppress undesired error messages in filenotify-tests.el
* test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
Suppress `vc-refresh-state', it produces undesired error messages.
2017-02-07 21:42:12 +01:00
Vibhav Pant
96c4e367f9 Add tests for checking byte-switch code.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-cond): New test,
  test byte-switch bytecode.
2017-02-07 19:35:20 +05:30
Paul Eggert
c3ee4d2860 Add cyclic-list tests
* test/manual/cycle-tests.el: New file (Bug#25606).
2017-02-05 13:30:29 -08:00
Tom Tromey
394fc3fd03 Set comment-multi-line in js-mode
Bug#6806:
* lisp/progmodes/js.el (js-mode): Set comment-multi-line to t.
* test/lisp/progmodes/js-tests.el (js-mode-auto-fill): New test.
2017-02-04 13:00:59 -07:00
Simen Heggestøyl
caf31fb5f5 * test/manual/indent/scss-mode.scss: Fix indentation 2017-02-04 20:40:13 +01:00
Simen Heggestøyl
f6ff7bb1fc Fix indentation of multiline CSS property values
* lisp/textmodes/css-mode.el (css-smie-grammar): Give colons belonging
to properties higher precedence.
(css--colon-inside-selector-p, css--colon-inside-funcall): New
functions for helping SMIE during tokenization.
(css-smie--forward-token, css-smie--backward-token): Distinguish
colons belonging to properties from other colons.

* test/manual/indent/css-mode.css: Add tests for the changes above.

* test/manual/indent/scss-mode.scss: Ditto.
2017-02-04 20:19:54 +01:00
Gemini Lasswell
ff4dd0d39c Add tests for lisp/kmacro.el
* test/lisp/kmacro-tests.el: New file.  (Bug#24939)
2017-02-04 13:55:47 +02:00
Eli Zaretskii
c8f91b168b Fix autorevert-tests on MS-Windows
* test/lisp/autorevert-tests.el
(auto-revert-test02-auto-revert-deleted-file): Don't check that
auto-revert-use-notify was reset to nil on w32.
2017-02-04 13:49:55 +02:00
Gemini Lasswell
ef3d8d6f72 New macro 'ert-with-message-capture'
* lisp/emacs-lisp/ert-x.el (ert-with-message-capture): New macro.
(Bug#25158)

* test/lisp/autorevert-tests.el (auto-revert--wait-for-revert)
(auto-revert-test00-auto-revert-mode)
(auto-revert-test01-auto-revert-several-files)
(auto-revert-test02-auto-revert-deleted-file)
(auto-revert-test03-auto-revert-tail-mode)
(auto-revert-test04-auto-revert-mode-dired):
* test/lisp/filenotify-tests.el (file-notify-test03-autorevert): Use
ert-with-message-capture.
2017-02-04 13:36:43 +02:00
Gemini Lasswell
331eb6c915 Add tests for lisp/emacs-lisp/testcover.el
* test/lisp/emacs-lisp/testcover-tests.el: New file.
* test/lisp/emacs-lisp/testcover-resources/testcases.el: New file.

Co-authored-by: Noam Postavsky <npostavs@users.sourceforge.net>
2017-02-04 11:43:50 +02:00
Noam Postavsky
da515a0d8e Add tests for scrolling
* test/manual/scroll-tests.el: New tests for scroll-margin behavior.
2017-02-02 21:21:18 -05:00
Tino Calancha
52a1ce65d6 * test/lisp/vc/diff-mode-tests.el: Require diff-mode. 2017-02-01 01:20:46 +09:00
Dima Kogan
3506ec2b11 New test for diff-mode handling trailing --
test/lisp/vc/diff-mode-tests.el: New test file
2017-01-31 07:50:28 -08:00
Tom Tromey
68e8f4bb4a css-mode documentation lookup feature
* etc/NEWS: Mention new feature.
* lisp/textmodes/css-mode.el (css-mode-map): New defvar.
(css--mdn-lookup-history): New defvar.
(css-lookup-url-format): New defcustom.
(css--mdn-property-regexp, css--mdn-completion-list): New defconsts.
(css--mdn-after-render, css--mdn-find-symbol, css-lookup-symbol): New
defuns.
* test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): New
test.
2017-01-30 15:53:10 -07:00
Juanma Barranquero
375c70fd9e test/*.el: Avoid byte-compiler warnings
* test/lisp/abbrev-tests.el (abbrev-table-p-test): Remove unused 'let*'.

* test/lisp/faces-tests.el (faces--test): New customization group.
(faces--test1, faces--test2): Use it.

* test/lisp/ffap-tests.el (ffap-tests-25243):
Call 'mark-whole-buffer' interactively.

* test/lisp/ibuffer-tests.el (ibuffer-filter-groups, ibuffer-filtering-alist)
(ibuffer-filtering-qualifiers, ibuffer-save-with-custom)
(ibuffer-saved-filter-groups, ibuffer-saved-filters): Defvar.
(ibuffer-format-qualifier, ibuffer-unary-operand): Declare.

* test/lisp/minibuffer-tests.el (completion-test1):
Mark unused lexical arguments.

* test/lisp/simple-tests.el (simple-test--dummy-buffer): Wrap result in
'with-no-warnings' to avoid them when the macro is invoked for effect.

* test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-count-test):
Mark unused lexical arguments.

* test/lisp/emacs-lisp/let-alist-tests.el (let-alist-surface-test):
Mark unused lexical arguments.
(let-alist-cons): Remove unused let binding.

* test/lisp/net/dbus-tests.el (dbus-debug): Defvar.
(dbus-get-unique-name): Declare.

* test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid):
Call 'font-lock-fontify-buffer' interactively.

* test/lisp/textmodes/tildify-tests.el (tildify-space-undo-test--test):
Mark unused lexical argument.
2017-01-28 04:40:36 +01:00
Philipp Stephani
107a0c4caa Don't require a shell when loading htmlfontify
* lisp/htmlfontify.el (hfy-which-etags): Don't call a shell for
detecting the etags version (Bug#25468).
* test/lisp/htmlfontify-tests.el (htmlfontify-bug25468): Add unit
test.
2017-01-27 18:37:58 +01:00
Eli Zaretskii
e26166aae0 Fix filenotify-tests on MS-Windows
* test/lisp/filenotify-tests.el (file-notify-test04-file-validity)
(file-notify-test05-dir-validity)
(file-notify-test06-many-events)
(file-notify-test08-watched-file-in-watched-dir): Manually remove
the watch descriptor before calling file-notify--test-cleanup-p.
(Bug#25539)
2017-01-27 10:28:15 +02:00
Hong Xu
7cb7a582f4 python-mode: Fix detection for opening blocks.
* python.el (python-info-dedenter-opening-block-positions): There
	can't be any back-indented lines between an opening block and the
	current line.

	* python-tests.el (python-indent-electric-colon-4): Add an indent
	test case where there is one-more indented previous opening block.
2017-01-26 20:14:19 -05:00
David Engster
aea6701839 xml: Fix parsing of default namespace with quoted names
* lisp/xml.el (xml-parse-attlist): Properly extract namespace when
  parsing is done with quoted symbol names (bug#23440).
* test/lisp/xml-tests.el (xml-parse-test--default-namespace-qnames)
  (xml-parse-test-default-namespace-qnames): Test for the above.
2017-01-24 22:56:05 +01:00
Noam Postavsky
201dfe3118 Fix comment detection on open parens
Characters having both open paren syntax and comment start syntax were
being detected as open parens even when they should have been part a
comment starter (Bug#24870).

* src/syntax.c (in_2char_comment_start): New function, extracted from
`scan_sexps_forward'.
(scan_sexps_forward): Add check for a 2-char comment starter before the
loop.  Inside the loop, do that check after incrementing the 'from'
character index.  Move the single char comment syntax cases into the
switch instead of special casing them before.
* test/src/syntax-tests.el (parse-partial-sexp-paren-comments):
(parse-partial-sexp-continue-over-comment-marker): New tests.
2017-01-23 19:28:30 -05:00
Philipp Stephani
9c4e3097b5 Check that variable lists are actually lists
'let' and 'let*' document that their first argument has to be a list,
but don't check for that; instead, they allow (and silently ignore)
other types.  Introduce an explicit type check.

* src/eval.c (Flet, FletX): Check that the variable list is indeed a
list.
* test/src/eval-tests.el: Add unit tests.
2017-01-19 17:17:50 +01:00
Eli Zaretskii
571532605b Rudimentary error handling for non-main threads
* src/thread.c (last_thread_error): New static variable.
(syms_of_threads): Staticpro it.
(record_thread_error, Fthread_last_error): New functions.
(syms_of_threads): Defsubr Fthread_last_error.

* doc/lispref/threads.texi (Basic Thread Functions): Document
thread-last-error.

* test/src/thread-tests.el (thread-errors, thread-signal-early)
(threads-condvar-wait): Test the values returned by
thread-last-error.
2017-01-18 18:00:16 +02:00
Tom Tromey
aa711e0a92 Fix JS regexp literal syntax propertization in expressions
Bug#25465:
* lisp/progmodes/js.el (js-syntax-propertize): Recognize a regexp
literal after "!", "&", and "|".
test/lisp/progmodes/js-tests.el (js-mode-regexp-syntax): New test.
2017-01-17 15:33:20 -07:00
Michael Albinus
299b190a6b Fix auto-save-file-name problem in Tramp on MS Windows
* lisp/files.el (make-auto-save-file-name): Use `file-remote-p'
rather than an ange-ftp regexp.

* lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
Fix a problem when running on MS Windows.

* test/lisp/net/tramp-tests.el (tramp-test31-make-auto-save-file-name):
Adapt test.
2017-01-17 17:35:23 +01:00
Noam Postavsky
fd6b829d91 Improve ffap-gopher-at-point handling of long lines
* lisp/ffap.el (ffap-gopher-regexp): Only match the KEY part.  Note
setting to nil is now supported.
(ffap--gopher-var-on-line): New function.
(ffap-gopher-at-point): Use it instead of the old ffap-gopher-regexp
which could overflow the regexp stack on long lines (Bug#25391).  Use
`let-alist' instead of calling `set' on local variables.
* test/lisp/ffap-tests.el (ffap-gopher-at-point): New test.
2017-01-15 13:04:54 -05:00
Tom Tromey
502390822f Add chained indentation to js-mode
Bug#20896
* lisp/progmodes/js.el (js-chain-indent): New variable.
(js--skip-term-backward, js--skip-terms-backward)
(js--chained-expression-p): New functions.
(js--proper-indentation): Call js--chained-expression-p.
* test/manual/indent/js-chain.js: New file.
* test/manual/indent/js.js: Add (non-)chained indentation test.
2017-01-13 12:38:36 -07:00
Tom Tromey
b47f97218e Fix js-mode indentation bug
Bug#15582:
* lisp/progmodes/js.el (js--find-newline-backward): New function.
(js--continued-expression-p): Use it.
* test/manual/indent/js.js: Add new test.
2017-01-13 12:38:36 -07:00
Tom Tromey
cab7a38588 Fix definition of EMACS in test/manual/indent/Makefile
* test/manual/indent/Makefile (EMACS): Add one more "..".
2017-01-13 12:38:36 -07:00
Tom Tromey
05fe74bec2 Fix two js-mode filling bugs
Bug#19399 and Bug#22431:
* lisp/progmodes/js.el (js-mode): Set comment-line-break-function and
c-block-comment-start-regexp.
* test/lisp/progmodes/js-tests.el: New file.
2017-01-13 12:38:36 -07:00
Eli Zaretskii
d018843e0e Fix last change
* test/src/thread-tests.el (threads-condvar-wait): Revert
previous change.  Make sure no other threads from previous
tests are running, to avoid interfering with our thread counts.
2017-01-13 18:17:12 +02:00
Eli Zaretskii
26b5426de8 Fix the new condvar test
* test/src/thread-tests.el (threads-condvar-wait): Enlarge the
time we sleep in the main thread to let the other thread
process notifications.
2017-01-13 18:05:38 +02:00
Eli Zaretskii
9c4d2afaa5 Minor improvements in the new condvar test
* test/src/thread-tests.el (threads-test-condvar-wait): Use
with-mutex instead of emulating it inline.
(threads-condvar-wait): Improve comments.  Check that the new
thread is alive before waiting for it to become blocked on the
conditional variable.
2017-01-13 16:13:30 +02:00
Eli Zaretskii
03e4ab0d58 Fix a bug in waiting for condition variable
* src/thread.c (lisp_mutex_lock, lisp_mutex_unlock)
(lisp_mutex_unlock_for_wait, condition_wait_callback)
(condition_notify_callback): Improve commentary.
(condition_wait_callback): Call post_acquire_global_lock before
attempting to lock the mutex, to make sure the lock's owner is
recorded correctly.

* test/src/thread-tests.el (threads-condvar-wait): New test.
2017-01-13 11:48:51 +02:00
Dmitry Lazurkin
d4a97088f6 Fix extracting async def type and name in python mode imenu
* lisp/progmodes/python.el (python-imenu--get-defun-type-name):
New function.
(python-imenu--build-tree): Use python-imenu--get-defun-type-name for
extract async or simple def type and name at current
position (Bug#24820).
* test/lisp/progmodes/python-tests.el (python-imenu-create-index-1):
(python-imenu-create-flat-index-1): Add async def's.
2017-01-12 20:40:19 -05:00
Glenn Morris
255f675d89 Convert some network test failures to skipping
These tests intermittently fail on hydra.nixos.org for unclear
reasons related to starting the external process.
This isn't an Emacs issue, and the failures cause noise on
the emacs-buildstatus list.  (Bug#24503)
* test/lisp/net/network-stream-tests.el (echo-server-nowait)
(connect-to-tls-ipv4-nowait): Skip rather than fail if the
external process fails to start properly.
2017-01-11 14:35:51 -05:00
Philipp Stephani
512e9886be Add support for Unicode whitespace in [:blank:]
See Bug#25366.

* src/character.c (blankp): New function for checking Unicode
horizontal whitespace.
* src/regex.c (ISBLANK): Use 'blankp' for non-ASCII horizontal
whitespace.
(BIT_BLANK): New bit for range table.
(re_wctype_to_bit, execute_charset): Use it.
* test/lisp/subr-tests.el (subr-tests--string-match-p--blank): Add
unit test for [:blank:] character class.
* test/src/regex-tests.el (test): Adapt unit test.
* doc/lispref/searching.texi (Char Classes): Document new Unicode
behavior for [:blank:].
2017-01-06 20:12:48 +01:00
Mark Oteiza
f49f8c1454 Turn on lexical-binding in md4.el
* lisp/md4.el: Turn on lexical-binding.
* test/lisp/md4-tests.el: New file.
2017-01-03 18:34:13 -05:00
Michael Albinus
975b2acfe6 Finish work on filenotify-tests.el
* test/lisp/filenotify-tests.el (file-notify--test-monitors):
New variable.
(file-notify--test-cleanup, file-notify--test-monitor): Use it.
(file-notify--test-read-event, file-notify-test02-events)
(file-notify-test04-file-validity): Handle "gvfs-monitor-dir.exe".
(file-notify-test03-autorevert)
(file-notify-test08-watched-file-in-watched-dir):
Set `file-notify--test-desc' for proper work of
`file-notify--test-monitor'.  (Bug#21804)
2017-01-03 09:50:41 +01:00
Philipp Stephani
93be35e038 Fix encoding of JSON surrogate pairs
JSON requires that such pairs be treated as UTF-16 surrogate pairs, not
individual code points; cf. Bug #24784.

* lisp/json.el (json-read-escaped-char): Fix decoding of surrogate
pairs.
(json--decode-utf-16-surrogates): New defun.

* test/lisp/json-tests.el (test-json-read-string): Add test for
surrogate pairs.
2017-01-01 13:24:14 +01:00
Paul Eggert
e6a782ee1a Update copyright year to 2017 in master
Run admin/update-copyright in the master branch.  This fixes files
that were not already fixed in the emacs-25 branch before it was
merged here.
2017-01-01 01:48:59 -08:00
Paul Eggert
42479446d3 Remove test/automated detritus from merge 2017-01-01 01:37:51 -08:00