From c6e3b51e211fdb3f92f82888c15a35fb21266c21 Mon Sep 17 00:00:00 2001 From: pfdietz <pfdietz@localhost> Date: Sun, 7 Sep 2003 17:30:04 +0000 Subject: [PATCH] Initial checkin of PARSE-INTEGER tests. --- ansi-tests/load-numbers.lsp | 2 + ansi-tests/parse-integer.lsp | 84 ++++++++++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 ansi-tests/parse-integer.lsp diff --git a/ansi-tests/load-numbers.lsp b/ansi-tests/load-numbers.lsp index f66c49f3..7ff08e1f 100644 --- a/ansi-tests/load-numbers.lsp +++ b/ansi-tests/load-numbers.lsp @@ -58,6 +58,8 @@ (load "integer-length.lsp") (load "integerp.lsp") +(load "parse-integer.lsp") + (load "rational.lsp") (load "rationalize.lsp") diff --git a/ansi-tests/parse-integer.lsp b/ansi-tests/parse-integer.lsp new file mode 100644 index 00000000..5086a536 --- /dev/null +++ b/ansi-tests/parse-integer.lsp @@ -0,0 +1,84 @@ +;-*- Mode: Lisp -*- +;;;; Author: Paul Dietz +;;;; Created: Sun Sep 7 10:24:13 2003 +;;;; Contains: Tests of PARSE-INTEGER + +(in-package :cl-test) + +(deftest parse-integer.error.1 + (classify-error (parse-integer)) + program-error) + +(deftest parse-integer.error.2 + (classify-error (parse-integer "123" :bogus)) + program-error) + +(deftest parse-integer.error.3 + (classify-error (parse-integer "123" :bogus 'foo)) + program-error) + +;;; + +(deftest parse-integer.1 + (parse-integer "123") + 123 3) + +(deftest parse-integer.2 + (parse-integer " 123") + 123 4) + +(deftest parse-integer.3 + (parse-integer " 12345678901234567890 ") + 12345678901234567890 24) + +(deftest parse-integer.4 + (parse-integer (concatenate 'string (string #\Newline) "17")) + 17 4) + +(deftest parse-integer.5 + (let ((c (name-char "Tab"))) + (if c + (parse-integer (concatenate 'string (string c) "6381" (string c))) + (values 6381 5))) + 6381 6) + +(deftest parse-integer.6 + (let ((c (name-char "Linefeed"))) + (if c + (parse-integer (concatenate 'string (string c) "-123712" (string c))) + (values -123712 8))) + -123712 9) + +(deftest parse-integer.7 + (let ((c (name-char "Page"))) + (if c + (parse-integer (concatenate 'string (string c) "0" (string c))) + (values 0 2))) + 0 3) + +(deftest parse-integer.8 + (let ((c (name-char "Return"))) + (if c + (parse-integer (concatenate 'string (string c) "999" (string c))) + (values 999 4))) + 999 5) + +(deftest parse-integer.9 + (parse-integer "-0") + 0 2) + +(deftest parse-integer.10 + (parse-integer "+0") + 0 2) + + + + + + + + + + + + -- GitLab