source: trunk/source/tests/ansi-tests/stringp.lsp @ 8991

Last change on this file since 8991 was 8991, checked in by gz, 11 years ago

Check in the gcl ansi test suite (original, in preparation for making local changes)

File size: 2.1 KB
Line 
1;-*- Mode:     Lisp -*-
2;;;; Author:   Paul Dietz
3;;;; Created:  Sun Aug 29 17:32:20 2004
4;;;; Contains: Tests of STRINGP
5
6(in-package :cl-test)
7
8(deftest stringp.1
9  (check-type-predicate #'stringp 'string)
10  nil)
11
12(deftest stringp.2
13  (notnot (stringp "abcd"))
14  t)
15
16(deftest stringp.3
17  (notnot (stringp (make-array 4 :element-type 'character
18                               :initial-contents '(#\a #\b #\c #\d))))
19  t)
20
21(deftest stringp.4
22  (notnot (stringp (make-array 4 :element-type 'base-char
23                               :initial-contents '(#\a #\b #\c #\d))))
24  t)
25
26(deftest stringp.5
27  (notnot (stringp (make-array 4 :element-type 'standard-char
28                               :initial-contents '(#\a #\b #\c #\d))))
29  t)
30
31(deftest stringp.6
32  (stringp 0)
33  nil)
34
35(deftest stringp.7
36  (stringp #\a)
37  nil)
38
39(deftest stringp.8
40  (let* ((s (make-array 10 :element-type 'character
41                        :initial-element #\a))
42         (s2 (make-array 4 :element-type 'character
43                         :displaced-to s
44                         :displaced-index-offset 2)))
45    (notnot (stringp s2)))
46  t)
47
48(deftest stringp.9
49  :notes (:nil-vectors-are-strings)
50  (notnot-mv (stringp (make-array '(0) :element-type nil)))
51  t)
52
53(deftest stringp.10
54  :notes (:nil-vectors-are-strings)
55  (notnot-mv (stringp (make-array '(37) :element-type nil)))
56  t)
57
58(deftest stringp.11
59  (notnot (stringp (make-array 4 :element-type 'base-char
60                               :fill-pointer 2
61                               :initial-contents '(#\a #\b #\c #\d))))
62  t)
63
64(deftest stringp.12
65  (notnot (stringp (make-array 4 :element-type 'base-char
66                               :adjustable t
67                               :initial-contents '(#\a #\b #\c #\d))))
68  t)
69
70(deftest stringp.13
71  (notnot (stringp (make-array 4 :element-type 'character
72                               :fill-pointer 2
73                               :initial-contents '(#\a #\b #\c #\d))))
74  t)
75
76(deftest stringp.14
77  (notnot (stringp (make-array 4 :element-type 'character
78                               :adjustable t
79                               :initial-contents '(#\a #\b #\c #\d))))
80  t)
81
82(deftest stringp.15
83  (let ((i 0))
84    (values
85     (notnot (stringp (progn (incf i) "")))
86     i))
87  t 1)
88
89;;; Error tests
90
91(deftest stringp.error.1
92  (signals-error (stringp) program-error)
93  t)
94
95(deftest stringp.error.2
96  (signals-error (stringp "" nil) program-error)
97  t)
Note: See TracBrowser for help on using the repository browser.