* admin/automerge: Quieten initial pull if start with reset.
[emacs.git] / test / src / callint-tests.el
blob9a812223ad0541412e640639cf1a5bfa3e18021f
1 ;;; callint-tests.el --- unit tests for callint.c -*- lexical-binding: t; -*-
3 ;; Copyright (C) 2018 Free Software Foundation, Inc.
5 ;; Author: Philipp Stephani <phst@google.com>
7 ;; This file is part of GNU Emacs.
9 ;; GNU Emacs is free software: you can redistribute it and/or modify
10 ;; it under the terms of the GNU General Public License as published by
11 ;; the Free Software Foundation, either version 3 of the License, or
12 ;; (at your option) any later version.
14 ;; GNU Emacs is distributed in the hope that it will be useful,
15 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 ;; GNU General Public License for more details.
19 ;; You should have received a copy of the GNU General Public License
20 ;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
22 ;;; Commentary:
24 ;; Unit tests for src/callint.c.
26 ;;; Code:
28 (require 'ert)
30 (ert-deftest call-interactively/incomplete-multibyte-sequence ()
31 "Check that Bug#30004 is fixed."
32 (let ((data (should-error (call-interactively (lambda () (interactive "\xFF"))))))
33 (should
34 (equal
35 (cdr data)
36 '("Invalid control letter `\u00FF' (#o377, #x00ff) in interactive calling string")))))
38 (ert-deftest call-interactively/embedded-nulls ()
39 "Check that Bug#30005 is fixed."
40 (should (equal (let ((unread-command-events '(?a ?b)))
41 (call-interactively (lambda (a b)
42 (interactive "ka\0a: \nkb: ")
43 (list a b))))
44 '("a" "b"))))
46 ;;; callint-tests.el ends here