Fix make-array transforms.
[sbcl.git] / tests / unicode-normalization.impure.lisp
index e930440..49aa69a 100644 (file)
@@ -1,3 +1,17 @@
+;;;; This software is part of the SBCL system. See the README file for
+;;;; more information.
+;;;;
+;;;; While most of SBCL is derived from the CMU CL system, the test
+;;;; files (like this one) were written from scratch after the fork
+;;;; from CMU CL.
+;;;;
+;;;; This software is in the public domain and is provided with
+;;;; absolutely no warranty. See the COPYING and CREDITS files for
+;;;; more information.
+
+;;; KLUDGE: eventually we will export NORMALIZE-STRING from somewhere.
+;;; Until we do, import it here so we can test it without putting ::
+;;; everywhere.
 (import 'sb-impl::normalize-string)
 
 (defun parse-one-line (line)
 
 (defun test-line (c1 c2 c3 c4 c5)
   ;; NFC
-  #+nil
   (assert-all-string= c2
     (normalize-string c1 :nfc)
     (normalize-string c2 :nfc)
     (normalize-string c3 :nfc))
-  #+nil
   (assert-all-string= c4
     (normalize-string c4 :nfc)
     (normalize-string c5 :nfc))
@@ -37,7 +49,6 @@
     (normalize-string c5 :nfd))
 
   ;; NFKC
-  #+nil
   (assert-all-string= c4
     (normalize-string c1 :nfkc)
     (normalize-string c2 :nfkc)
 
 (defun test-no-normalization (string)
   (assert-all-string= string
-    #+nil
     (normalize-string string :nfc)
     (normalize-string string :nfd)
-    #+nil
     (normalize-string string :nfkc)
     (normalize-string string :nfkd)))
 
@@ -70,7 +79,8 @@
          (assert (string= "@Part0" line :end2 6))
          (assert (char= #\# (char (read-line s) 0)))))
     ;; Part0: specific cases
-    (with-test (:name (:unicode-normalization :part0))
+    (with-test (:name (:unicode-normalization :part0)
+                      :skipped-on '(not :sb-unicode))
       (do ((line (read-line s) (read-line s)))
           ((char= #\# (char line 0))
            (assert (string= "@Part1" (read-line s) :end2 6))
@@ -81,7 +91,8 @@
           (test-line c1 c2 c3 c4 c5))))
     ;; Part1: single characters.  (Extra work to check for conformance
     ;; on unlisted entries)
-    (with-test (:name (:unicode-normalization :part1))
+    (with-test (:name (:unicode-normalization :part1)
+                      :skipped-on '(not :sb-unicode))
       (do ((line (read-line s) (read-line s))
            (code 0))
           ((char= #\# (char line 0))
                (setf code (1+ c)))
             (test-no-normalization (string (code-char code)))))))
     ;; Part2: Canonical Order Test
-    (with-test (:name (:unicode-normalization :part2))
+    (with-test (:name (:unicode-normalization :part2)
+                      :skipped-on '(not :sb-unicode))
       (do ((line (read-line s) (read-line s)))
           ((char= #\# (char line 0))
            (assert (string= "@Part3" (read-line s) :end2 6))
             (parse-one-line line)
           (test-line c1 c2 c3 c4 c5))))
     ;; Part3: PRI #29 Test
-    (with-test (:name (:unicode-normalization :part3))
+    (with-test (:name (:unicode-normalization :part3)
+                      :skipped-on '(not :sb-unicode))
       (do ((line (read-line s) (read-line s)))
           ((char= #\# (char line 0))
            (assert (char= #\# (char (read-line s) 0)))