mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
Tweak subr-x.el substring functions
* lisp/emacs-lisp/subr-x.el (string-join): #'-quote function symbol. (string-trim-left, string-trim-right): Make better use of substring for minor speedup. * test/lisp/emacs-lisp/subr-x-tests.el (subr-x-test-string-trim-left, subr-x-test-string-trim-right) (subr-x-test-string-remove-prefix) (subr-x-test-string-remove-suffix): New tests.
This commit is contained in:
parent
34eba3e333
commit
1013e0392b
2 changed files with 53 additions and 6 deletions
|
|
@ -532,6 +532,53 @@
|
|||
(format "abs sum is: %s"))
|
||||
"abs sum is: 15")))
|
||||
|
||||
|
||||
;; Substring tests
|
||||
|
||||
(ert-deftest subr-x-test-string-trim-left ()
|
||||
"Test `string-trim-left' behavior."
|
||||
(should (equal (string-trim-left "") ""))
|
||||
(should (equal (string-trim-left " \t\n\r") ""))
|
||||
(should (equal (string-trim-left " \t\n\ra") "a"))
|
||||
(should (equal (string-trim-left "a \t\n\r") "a \t\n\r"))
|
||||
(should (equal (string-trim-left "" "") ""))
|
||||
(should (equal (string-trim-left "a" "") "a"))
|
||||
(should (equal (string-trim-left "aa" "a*") ""))
|
||||
(should (equal (string-trim-left "ba" "a*") "ba"))
|
||||
(should (equal (string-trim-left "aa" "a*?") "aa"))
|
||||
(should (equal (string-trim-left "aa" "a+?") "a")))
|
||||
|
||||
(ert-deftest subr-x-test-string-trim-right ()
|
||||
"Test `string-trim-right' behavior."
|
||||
(should (equal (string-trim-right "") ""))
|
||||
(should (equal (string-trim-right " \t\n\r") ""))
|
||||
(should (equal (string-trim-right " \t\n\ra") " \t\n\ra"))
|
||||
(should (equal (string-trim-right "a \t\n\r") "a"))
|
||||
(should (equal (string-trim-right "" "") ""))
|
||||
(should (equal (string-trim-right "a" "") "a"))
|
||||
(should (equal (string-trim-right "aa" "a*") ""))
|
||||
(should (equal (string-trim-right "ab" "a*") "ab"))
|
||||
(should (equal (string-trim-right "aa" "a*?") "")))
|
||||
|
||||
(ert-deftest subr-x-test-string-remove-prefix ()
|
||||
"Test `string-remove-prefix' behavior."
|
||||
(should (equal (string-remove-prefix "" "") ""))
|
||||
(should (equal (string-remove-prefix "" "a") "a"))
|
||||
(should (equal (string-remove-prefix "a" "") ""))
|
||||
(should (equal (string-remove-prefix "a" "b") "b"))
|
||||
(should (equal (string-remove-prefix "a" "a") ""))
|
||||
(should (equal (string-remove-prefix "a" "aa") "a"))
|
||||
(should (equal (string-remove-prefix "a" "ab") "b")))
|
||||
|
||||
(ert-deftest subr-x-test-string-remove-suffix ()
|
||||
"Test `string-remove-suffix' behavior."
|
||||
(should (equal (string-remove-suffix "" "") ""))
|
||||
(should (equal (string-remove-suffix "" "a") "a"))
|
||||
(should (equal (string-remove-suffix "a" "") ""))
|
||||
(should (equal (string-remove-suffix "a" "b") "b"))
|
||||
(should (equal (string-remove-suffix "a" "a") ""))
|
||||
(should (equal (string-remove-suffix "a" "aa") "a"))
|
||||
(should (equal (string-remove-suffix "a" "ba") "b")))
|
||||
|
||||
(provide 'subr-x-tests)
|
||||
;;; subr-x-tests.el ends here
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue