summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2018-03-21 12:10:11 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2018-03-21 12:11:52 -0700
commite70d0c9e66d7a8609450b2889869d16aeb0363b5 (patch)
tree87e0b7af3ed19ad745cd7cd15e5c9f9e2cec9f71
parent56487467569713f8cee2285855bdcc26bfe9b517 (diff)
downloademacs-e70d0c9e66d7a8609450b2889869d16aeb0363b5.tar.gz
Add tests for Bug#30408
* test/src/editfns-tests.el (format-%d-large-float) (format-%x-large-float, format-%o-invalid-float): New tests.
-rw-r--r--test/src/editfns-tests.el21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/src/editfns-tests.el b/test/src/editfns-tests.el
index 69ea6f5cc8f..6e1f730166d 100644
--- a/test/src/editfns-tests.el
+++ b/test/src/editfns-tests.el
@@ -142,6 +142,27 @@
(should (string-equal (format "%#05X" #x10) "0X010"))
(should (string-equal (format "%#04x" 0) "0000")))
+;;; Test Bug#30408.
+(ert-deftest format-%d-large-float ()
+ (should (string-equal (format "%d" 18446744073709551616.0)
+ "18446744073709551616"))
+ (should (string-equal (format "%d" -18446744073709551616.0)
+ "-18446744073709551616")))
+
+;;; Another test for Bug#30408.
+;;; Perhaps Emacs will be improved someday to return the correct
+;;; answer for positive numbers instead of overflowing; in
+;;; that case this test will need to be changed. In the meantime make
+;;; sure Emacs is reporting the overflow correctly.
+(ert-deftest format-%x-large-float ()
+ (should-error (format "%x" 18446744073709551616.0)
+ :type 'overflow-error))
+
+;;; Another test for Bug#30408.
+(ert-deftest format-%o-invalid-float ()
+ (should-error (format "%o" -1e-37)
+ :type 'overflow-error))
+
;;; Check format-time-string with various TZ settings.
;;; Use only POSIX-compatible TZ values, since the tests should work
;;; even if tzdb is not in use.