1. 07 Dec, 2019 1 commit
  2. 06 Dec, 2019 2 commits
    • Paul Eggert's avatar
      Test format-time-string padding · 48f68885
      Paul Eggert authored
      Adapted from tests written by Stephen Gildea.
      * test/src/timefns-tests.el:
      New tests.
    • Andreas Politz's avatar
      * test/src/buffer-tests.el: Add loads of overlay tests · bcf4201d
      Andreas Politz authored
      Taken from the `feature/noverlay` branch.
      Suggested by Vladimir Kazanov <vekazanov@gmail.com>.
  3. 05 Dec, 2019 1 commit
    • Eli Zaretskii's avatar
      Fix recent modifications in emacs-module-tests · 85f8aa10
      Eli Zaretskii authored
      * test/data/emacs-module/mod-test.c (extract_big_integer): Fix
      calculation of size of 'magnitude' when 'emacs_limb_t' is wider
      than 'unsigned long'.
      * test/src/emacs-module-tests.el
      (module--test-assertions--call-emacs-from-gc): On MS-Windows,
      check also mod-test-emacs with ".exe" appended, before
      skipping the tests.
  4. 04 Dec, 2019 1 commit
    • Philipp Stephani's avatar
      Change module interface to no longer use GMP objects directly. · 096be9c4
      Philipp Stephani authored
      As described in the new comment added to emacs-module.c, using GMP
      directly in the module interface has significant downsides: it couples
      the module interface directly to the implementation and requires
      module authors to link their module against the same GMP library as
      Emacs itself, which is often difficult and an unnecessary burden.  By
      picking a representation for the magnitude that often matches the one
      used by GMP, we can avoid overhead when converting from and to GMP in
      most cases.
      Loading the test module in test/data/emacs-module and evaluating
      (dotimes (_ 10000)
        (mod-test-double (* 2 most-negative-fixnum)))
      under Callgrind shows that on my (GNU/Linux) machine Emacs only spends
      10% of the CPU time of mod-test-double in mpz_import and mpz_export
      combined, even though that function does little else.  (By contrast,
      30% is spent in allocate_pseudovector.)
      * src/emacs-module.h.in: Don't check EMACS_MODULE_GMP.  Don't include
      gmp.h.  Remove emacs_mpz structure.  Instead, define type alias
      emacs_limb_t and macro EMACS_LIMB_MAX.
      * src/module-env-27.h: Change interface of extract_big_integer and
      make_big_integer to take a sign-magnitude representation instead of
      * src/emacs-module.c: Don't check EMACS_MODULE_GMP or
      EMACS_MODULE_HAVE_MPZ_T.  Add a comment about the chosen
      (module_extract_big_integer, module_make_big_integer): Reimplement
      without using mpz_t in the interface.
      * doc/lispref/internals.texi (Module Values): Adapt function
      documentation and example.  Stop mentioning GMP and EMACS_MODULE_GMP.
      * test/data/emacs-module/mod-test.c: Don't define EMACS_MODULE_GMP or
      (memory_full, extract_big_integer, make_big_integer): New helper
      functions, identical to example in the Info documentation.
      (Fmod_test_nanoseconds, Fmod_test_double): Adapt to new interface.
  5. 03 Dec, 2019 1 commit
    • Mattias Engdegård's avatar
      Avoid duplicated character classes in rx · a6b59851
      Mattias Engdegård authored
      For example, (any digit digit) should produce "[[:digit:]]",
      not "[[:digit:][:digit:]]".
      * lisp/emacs-lisp/rx.el (rx--translate-any): Deduplicate character classes.
      * test/lisp/emacs-lisp/rx-tests.el (rx-any): Add test case.
  6. 01 Dec, 2019 1 commit
    • Michael Albinus's avatar
      Suppress superfluous messages in tramp-tests · ec65b9ad
      Michael Albinus authored
      * test/lisp/net/tramp-tests.el (tramp-test10-write-region)
      (tramp-test36-vc-registered): Let-bind `inhibit-message'.
  7. 29 Nov, 2019 1 commit
    • Robert Pluim's avatar
      Add nsm-should-check IPv6 local subnet tests · 6d8e758e
      Robert Pluim authored
      * test/lisp/net/nsm-tests.el (nsm-check-local-subnet-ipv6): Now
      that IPv6 addresses are returned from network-interface-list, test
      nsm-should check and nsm-network-same-subnet for IPv6 as well.
  8. 28 Nov, 2019 2 commits
    • Noam Postavsky's avatar
      Improve errors & warnings due to fancy quoted vars (Bug#32939) · b2790db0
      Noam Postavsky authored
      Add some hints to the message for byte compiler free & unused variable
      warnings, and 'void-variable' errors where the variable has confusable
      quote characters in it.
      * lisp/help.el (uni-confusables), uni-confusables-regexp): New
      (help-command-error-confusable-suggestions): New function, added to
      (help-uni-confusable-suggestions): New function.
      * lisp/emacs-lisp/bytecomp.el (byte-compile-variable-ref):
      * lisp/emacs-lisp/cconv.el (cconv--analyze-use): Use it.
      * lisp/emacs-lisp/lisp-mode.el
      (lisp--match-confusable-symbol-character): New function.
      (lisp-fdefs): Use it to fontify confusable characters with
      font-lock-warning-face when they occur in symbol names.
      * doc/lispref/modes.texi (Faces for Font Lock):
      * doc/lispref/objects.texi (Basic Char Syntax): Recommend backslash
      escaping of confusable characters, and mention new fontification.
      * etc/NEWS: Announce the new fontification behavior.
      * test/lisp/emacs-lisp/lisp-mode-tests.el (lisp-fontify-confusables):
      New test.
    • Noam Postavsky's avatar
      Stop signaling an error when reading "smart quotes" in symbols · 85f586f3
      Noam Postavsky authored
      Revert commits from 2018-01-28 "Fix round tripping of read->print for
      symbols with strange quotes", and 2017-07-22 "Signal error for symbol
      names with strange quotes (Bug#2967)".
      * etc/NEWS: Remove corresponding entries.
      * src/character.c (confusable_symbol_character_p):
      * test/src/lread-tests.el (lread-tests--old-style-backquotes): Remove.
      * src/lread.c (read1): Don't signal error on confusable character.
      * src/print.c (print_object): Don't escape confusable characters.
  9. 26 Nov, 2019 2 commits
  10. 23 Nov, 2019 1 commit
  11. 22 Nov, 2019 1 commit
    • dickmao's avatar
      Refix conditional step clauses in cl-loop · 045cfbef
      dickmao authored
      * lisp/emacs-lisp/cl-macs.el
      (cl--loop-bindings, cl--loop-symbol-macs, cl-loop):
      Add cl--loop-conditions, remove cl--loop-guard-cond.
      (cl--push-clause-loop-body): Apply clause to both cl--loop-conditions
      and cl--loop-body
      (cl--parse-loop-clause): Use cl--push-clause-loop-body.
      * test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-and-assignment):
      Use docstring.
      (cl-macs-loop-for-as-arith): Removed expected failure.
      (cl-macs-loop-conditional-step-clauses): Add some tests (bug#29799).
  12. 20 Nov, 2019 1 commit
    • Stephen Gildea's avatar
      Expand coverage of unit tests for time-stamp · 123c775a
      Stephen Gildea authored
      * test/lisp/time-stamp-tests.el: Remove redundant word "test"
      from the names of all the tests.
      (time-stamp-custom-time-zone, time-stamp-custom-pattern,
      time-stamp-custom-inserts-lines, time-stamp-custom-count,
      time-stamp-helper-safe-locals): New tests
  13. 18 Nov, 2019 2 commits
    • Phil Sainty's avatar
      lisp/so-long.el: Refactor menu action commands · 33676820
      Phil Sainty authored
      * lisp/so-long.el (so-long-menu): Call `so-long' with an ACTION
      argument instead of using `so-long-menu-item-replace-action'.
      (so-long-menu-item-replace-action): Remove the deprecated function.
      * test/lisp/so-long-tests/so-long-tests.el
      (so-long-tests-so-long-menu-item-replace-action): Update the test.
    • Stefan Monnier's avatar
      lisp/so-long.el: Use (interactive "@") for menu commands · 6b361d95
      Stefan Monnier authored
      * lisp/so-long.el (so-long-menu, so-long-menu-item-replace-action)
      (so-long-revert): Use interactive code "@", replacing all uses of
      `so-long-menu-click-window'.  This approach leaves the window selected
      afterwards, whereas the old code did not; but that is not a problem.
      (so-long-menu-click-window, so-long-menu-item-revert): Remove the
      deprecated functions.
      * test/lisp/so-long-tests/so-long-tests.el
      (so-long-tests-so-long-menu-item-replace-action): Update the test.
      Co-authored-by: default avatarPhil Sainty <psainty@orcon.net.nz>
  14. 15 Nov, 2019 2 commits
    • Stefan Monnier's avatar
      * lisp/progmodes/perl-mode.el (perl-calculate-indent): Indent qw(...) · 87347a5b
      Stefan Monnier authored
      Fix initialization of `state`.
      Special-case `qw(...)` because we do want to indent its contents.
    • Paul Eggert's avatar
      Handle weird cases like (ceil 0 0.0) · 8b848def
      Paul Eggert authored
      * src/floatfns.c (double_integer_scale): Distinguish Inf from NaN.
      (rounding_driver): Handle (ceil 0 0.0) and (ceil 0 1.0e+INF).
      * test/src/floatfns-tests.el (special-round): Add tests for
      weird cases like this.
      Avoid crash with (floor 0 0.0)
      * src/floatfns.c (rounding_driver): Signal an arithmetic
      error if divisor is 0.0 or -0.0, instead of crashing.
  15. 14 Nov, 2019 4 commits
    • Paul Eggert's avatar
      Fix byte-counting error in ‘format’ · c2cd8e62
      Paul Eggert authored
      Problem reported by Paul Pogonyshev (Bug#38191).
      * src/editfns.c (styled_format): When checking for adjacent
      %-sequences, use byte position rather than character position.
      * test/src/editfns-tests.el (format-properties): Test for fix.
    • Phil Sainty's avatar
      Defer triggering `so-long' until the buffer is displayed · e9dca2b5
      Phil Sainty authored
      * lisp/so-long.el (so-long-invisible-buffer-function): New user option.
      (so-long--set-auto-mode): Use so-long-invisible-buffer-function.
      (so-long-deferred): New function/value for so-long-invisible-buffer-function.
      (so-long, so-long--disable): Support for so-long-deferred.
      * test/lisp/so-long-tests/autoload-longlines-mode-tests.el
      * test/lisp/so-long-tests/autoload-major-mode-tests.el
      * test/lisp/so-long-tests/autoload-minor-mode-tests.el
      * test/lisp/so-long-tests/so-long-tests.el:
      Support for so-long-deferred.
      Pre-existing tests have been updated to ensure the buffer is already
      displayed in cases where a call to `normal-mode' is the (potential)
      trigger for `so-long'.
    • Phil Sainty's avatar
      ; Documentation and spelling · 90290745
      Phil Sainty authored
      * lisp/so-long.el: Documentation fixes.  For the purposes of
      consistency, this reverts some of the changes made in commit
      41ba8231, including one which
      had introduced inconsistent spelling.
      ispell configuration and LocalWords have been added such that
      `ispell-buffer' should find no misspellings for this library.
      * test/lisp/so-long-tests/spelling-tests.el (so-long-spelling):
      New test to check the spelling using `ispell-buffer'.
    • Stephen Gildea's avatar
      time-stamp: update support for time zone numeric offset · 1d189843
      Stephen Gildea authored
      * time-stamp.el (time-stamp-string-preprocess): Change new format for
      numeric time zone from %:z to %5z to match format-time-string better.
      (time-stamp-format): Document support for numeric time zone.
      See discussion in bug#32931.
      * NEWS: Mention time-stamp-format %5z.
  16. 13 Nov, 2019 2 commits
    • Paul Eggert's avatar
      Fix double-rounding bug in ceiling etc. · bede5984
      Paul Eggert authored
      This is doable now that we have bignums.
      * src/floatfns.c (integer_value): Remove; no longer used.
      (rescale_for_division): New function.
      (rounding_driver): Use it to divide properly (by using bignums)
      even when arguments are float, fixing a double-rounding FIXME.
      * src/lisp.h (LOG2_FLT_RADIX): Move here ...
      * src/timefns.c (frac_to_double): ... from here.
      * test/src/floatfns-tests.el (big-round):
      Add a test to catch the double-rounding bug.
    • Michael Albinus's avatar
      Adapt Tramp docstrings according to checkdoc · d3438460
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-backup-directory-alist)
      (tramp-echoed-echo-mark-regexp, tramp-syntax-values)
      (tramp-lookup-syntax, tramp-build-prefix-format)
      (tramp-build-prefix-regexp, tramp-build-method-regexp)
      (tramp-build-prefix-ipv6-format, tramp-build-prefix-ipv6-regexp)
      (tramp-build-postfix-host-regexp, tramp-unknown-id-string)
      (tramp-unknown-id-integer, tramp-build-file-name-regexp)
      (tramp-build-completion-file-name-regexp, tramp-chunksize)
      (tramp-find-method, tramp-find-user, tramp-find-host)
      (tramp-dissect-file-name, tramp-get-buffer)
      (tramp-get-connection-buffer, tramp-debug-message, tramp-error)
      (with-tramp-connection-property, tramp-run-real-handler)
      (tramp-file-name-for-operation, tramp-file-name-handler)
      (tramp-handle-file-name-nondirectory, tramp-mode-string-to-int)
      * lisp/net/tramp-adb.el (tramp-adb-file-name-p):
      * lisp/net/tramp-archive.el (tramp-archive-run-real-handler)
      (tramp-archive-gvfs-file-name, tramp-archive-handle-access-file):
      * lisp/net/tramp-cmds.el (tramp-list-remote-buffers):
      * lisp/net/tramp-compat.el (tramp-unload-file-name-handlers)
      (tramp-compat-funcall, tramp-compat-tramp-file-name-slots):
      * lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler)
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-p)
      * lisp/net/tramp-integration.el
      * lisp/net/tramp-rclone.el (tramp-rclone-file-name-p)
      (tramp-rclone-file-name-handler, tramp-rclone-send-command):
      * lisp/net/tramp-sh.el (tramp-sh--quoting-style-options)
      (tramp-sh-inotifywait-process-filter, tramp-find-executable)
      (tramp-set-remote-path, tramp-open-shell, tramp-find-shell)
      (tramp-send-command-and-check, tramp-shell-case-fold)
      * lisp/net/tramp-smb.el (tramp-smb-file-name-p)
      (tramp-smb-get-stat-capability, tramp-smb-shell-quote-argument):
      * lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-p)
      * test/lisp/net/tramp-archive-tests.el (tramp-archive-test-all):
      * test/lisp/net/tramp-tests.el (tramp--test-gvfs-p)
      (tramp-test-all): Adapt docstrings according to `checkdoc'.
  17. 11 Nov, 2019 1 commit
  18. 10 Nov, 2019 1 commit
    • Glenn Morris's avatar
      Disable a portion of one doc-test · 2f36a082
      Glenn Morris authored
      * test/src/doc-tests.el (doc-test-substitute-command-keys):
      Disable component that fails twice in the past 5 weeks
      due to changes in the minibuffer map.
  19. 09 Nov, 2019 1 commit
    • Eli Zaretskii's avatar
      Fix case-insensitive completion of buffer names · f2019fc6
      Eli Zaretskii authored
      * test/src/minibuf-tests.el (test-try-completion-ignore-case):
      New test, suggested by Stefan Monnier <monnier@iro.umontreal.ca>.
      * src/minibuf.c (Ftry_completion): Don't treat strings that
      are identical but for the case as if they were identical for
      the purposes of not counting the same string twice.  This
      fixes case-insensitive completion when all the candidates are
      identical but for the letter-case.  (Bug#11339)
  20. 08 Nov, 2019 1 commit
    • Robert Pluim's avatar
      Ensure building and running on non-IPv6 capable hosts works · 063277c5
      Robert Pluim authored
      * src/process.c (Fmake_network_process) [AF_INET6]: Only build ::1
      localhost when IPv6 is supported.
      (Fnetwork_lookup_address_info) [AF_INET6]: Move check for Qipv6 inside
      ifdef, since its definition depends on AF_INET6.  Don't return IPv6
      addresses when they're not supported.
      * test/src/process-tests.el (lookup-family-specification,
      lookup-google): Only do IPv6 lookup if IPv6 is supported.
  21. 07 Nov, 2019 2 commits
    • Michael Albinus's avatar
      Make ange-ftp fit for tramp-tests · 4ab78001
      Michael Albinus authored
      * lisp/net/ange-ftp.el (ange-ftp-repaint-minibuffer): Use empty message.
      (ange-ftp-quote-string): Unquote the string.
      (ange-ftp-substitute-in-file-name, ange-ftp-access-file)
      (ange-ftp-copy-directory, ange-ftp-make-symbolic-link)
      (ange-ftp-add-name-to-file): New defuns.  Set 'ange-ftp property.
      (ange-ftp-real-copy-directory): New defuns.
      (ange-ftp-file-name-as-directory): Care about `non-essential'.
      (ange-ftp-file-attributes): Handle ID-STRING.
      (ange-ftp-copy-file-internal, ange-ftp-rename-file)
      (ange-ftp-make-directory): Improve error handling.
      (ange-ftp-insert-directory): Initialize SWITCHES if they are nil.
      * test/lisp/net/tramp-tests.el (ange-ftp-make-backup-files): Declare.
      (tramp-test39-make-nearby-temp-file, tramp--test-ange-ftp-p): New defun.
      (tramp-test06-directory-file-name, tramp-test10-write-region)
      (tramp-test11-copy-file, tramp-test12-rename-file)
      (tramp--test-special-characters): Use it.
    • Stefan Kangas's avatar
      Test that comint-password-prompt-regexp matches "git push" · 1428dfe6
      Stefan Kangas authored
      * test/lisp/comint-tests.el (comint-testsuite-password-strings): Test
      that 'comint-password-prompt-regexp' matches 'git push'
      output.  (Bug#20910)
  22. 06 Nov, 2019 2 commits
    • Stephen Gildea's avatar
      time-stamp: add support for time zone numeric offset · 9ce67baa
      Stephen Gildea authored
      * time-stamp.el: Implement %:z as expanding to the numeric time zone
      offset, to address the feature request of bug#32931.  Do not document it
      yet, to discourage compatibility problems in mixed Emacs 26 and Emacs 27
      environments.  Documentation will be added in a subsequent release at
      least two years later.  (We cannot yet use %z for numeric time zone
      because in Emacs 26 it was documented to do something else.)
      * time-stamp-tests.el (time-stamp-test-format-time-zone): expand this
      test and break it into two tests, time-stamp-test-format-time-zone-name
      and time-stamp-test-format-time-zone-offset.
    • Michael Albinus's avatar
      More error checks in Tramp's make-directory · da2df1c1
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-make-directory):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-make-directory):
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-directory):
      * lisp/net/tramp-smb.el (tramp-smb-handle-make-directory):
      * lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-make-directory):
      Signal `file-already-exists' if DIR exists.
      * test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name):
      Fix thinko.
      (tramp-test13-make-directory, tramp-test14-delete-directory)
      (tramp-test15-copy-directory): Extend tests.
  23. 05 Nov, 2019 1 commit
    • Paul Eggert's avatar
      Don’t signal overflow for (expt 1 bignum) · 5ab29400
      Paul Eggert authored
      Similarly for (expt 0 bignum) and (expt -1 bignum).
      The result is always a -1, 0 or 1, so do not signal overflow.
      * src/data.c (expt_integer): Do not signal an overflow if
      -1 <= X <= 1.  Be clearer about when overflow is signaled.
      * test/src/floatfns-tests.el (bignum-expt): Test this.
  24. 04 Nov, 2019 1 commit
    • Michael Albinus's avatar
      Improve Tramp error handling · dd19cc3a
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-set-syntax): Add missing argument.
      (tramp-signal-hook-function): Make it more robust.
      * lisp/net/tramp-adb.el
      (tramp-adb-handle-copy-file, tramp-adb-handle-rename-file):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
      * lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file)
      * lisp/net/tramp-sh.el (tramp-sh-handle-directory-files-and-attributes)
      (tramp-sh-handle-copy-directory, tramp-do-copy-or-rename-file):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-copy-file, tramp-smb-handle-directory-files)
      * lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
      Improve error handling.
      * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
      (tramp-test12-rename-file, tramp-test14-delete-directory)
      (tramp-test15-copy-directory, tramp-test16-directory-files)
      (tramp-test19-directory-files-and-attributes): Extend tests.
  25. 03 Nov, 2019 1 commit
    • Eli Zaretskii's avatar
      Fix file-tests.el on MS-Windows · 2ad06e28
      Eli Zaretskii authored
      * test/lisp/files-tests.el
      (files-tests-file-name-non-special-start-file-process): On
      MS-Windows, wait till the process dies before returning from
      the files-tests--with-temp-non-special macro, to ensure the
      temporary directory is successfully deleted.
  26. 01 Nov, 2019 1 commit
  27. 31 Oct, 2019 3 commits
    • Eric Ludlam's avatar
      * test/lisp/cedet/semantic-utest-ia.el: Update from upstream · cf59afb7
      Eric Ludlam authored
      Merge content from CEDET on SF to bring in additional test points
      and support more types of languages.
      (semantic-utest-ia-struct.cpp, semantic-utest-ia-templates.cpp)
      (semantic-utest-ia-using.cpp, semantic-utest-ia-nsp.cpp)
      (semantic-utest-ia-localvars.cpp, semantic-utest-ia-varnamse.java)
      (semantic-utest-ia-wisent.wy, semantic-utest-ia-texi)
      (semantic-utest-ia-make, semantic-utest-ia-srecoder): New test points
      (semantic-ia-utest-buffer): Use comment-start-skip when looking
      for test point tokens.
      Capture errors ignoring debugger to enable test for empty results.
      Improve output from test diagnostics.
      (semantic-ia-utest-buffer-refs): Use comment-start-skip to find
      test point tokens.
      Author: Eric Ludlam <zappo@gnu.org>
    • Eric Ludlam's avatar
      * test/manual/cedet/tests/test*: More updates from upstream · f69e2aa1
      Eric Ludlam authored
      * test/manual/cedet/tests/testjavacomp.java,
      Merge content from CEDET on SF with extended test points for use with
      Author: Eric Ludlam <zappo@gnu.org>
    • Eric Ludlam's avatar
      * test/manual/cedet/tests/testdoublens.cpp: Update from upstream · 31ed0302
      Eric Ludlam authored
      * test/manual/cedet/tests/testdoublens.hpp:
      Merge content from CEDET on SF with extended test points for use with
      Author: Eric Ludlam <zappo@gnu.org>