From 33ae1dc1da9a7b65dd7ba494d9af76e773e20c70 Mon Sep 17 00:00:00 2001
From: pfdietz <pfdietz@localhost>
Date: Fri, 4 Oct 2002 10:45:15 +0000
Subject: [PATCH] Added tests for STRING-LEFT-TRIM, STRING-RIGHT-TRIM.

---
 ansi-tests/gclload2.lsp          |   4 +-
 ansi-tests/string-left-trim.lsp  | 108 +++++++++++++++++++++++++++++++
 ansi-tests/string-right-trim.lsp | 108 +++++++++++++++++++++++++++++++
 ansi-tests/string-trim.lsp       |   1 -
 4 files changed, 219 insertions(+), 2 deletions(-)
 create mode 100644 ansi-tests/string-left-trim.lsp
 create mode 100644 ansi-tests/string-right-trim.lsp

diff --git a/ansi-tests/gclload2.lsp b/ansi-tests/gclload2.lsp
index eb076ea1..ee719cdc 100644
--- a/ansi-tests/gclload2.lsp
+++ b/ansi-tests/gclload2.lsp
@@ -121,4 +121,6 @@
 (load "nstring-upcase.lsp")
 (load "nstring-downcase.lsp")
 (load "nstring-capitalize.lsp")
-(load "string-trim.lsp")
\ No newline at end of file
+(load "string-trim.lsp")
+(load "string-left-trim.lsp")
+(load "string-right-trim.lsp")
diff --git a/ansi-tests/string-left-trim.lsp b/ansi-tests/string-left-trim.lsp
new file mode 100644
index 00000000..fb663e1d
--- /dev/null
+++ b/ansi-tests/string-left-trim.lsp
@@ -0,0 +1,108 @@
+;-*- Mode:     Lisp -*-
+;;;; Author:   Paul Dietz
+;;;; Created:  Fri Oct  4 04:57:41 2002
+;;;; Contains: Tests for STRING-LEFT-TRIM
+
+(in-package :cl-test)
+
+(deftest string-left-trim.1
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.2
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim '(#\a #\b) s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.3
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim #(#\a #\b) s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.4
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim (make-array 2 :initial-contents '(#\a #\b))
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.5
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim (make-array 2 :initial-contents '(#\a #\b)
+				      :element-type 'character)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.6
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim (make-array 2 :initial-contents '(#\a #\b)
+				      :element-type 'standard-char)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.7
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim (make-array 2 :initial-contents '(#\a #\b)
+				      :element-type 'base-char)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.8
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-left-trim (make-array 2 :initial-contents '(#\a #\b #\c #\d)
+				      :element-type 'character
+				      :fill-pointer 2)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.9
+  (let* ((s (make-array 7 :initial-contents (coerce "abcdaba" 'list)
+			:element-type 'character
+			))
+	 (s2 (string-left-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.10
+  (let* ((s (make-array 9 :initial-contents (coerce "abcdabadd" 'list)
+			:element-type 'character
+			:fill-pointer 7))
+	 (s2 (string-left-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.11
+  (let* ((s (make-array 7 :initial-contents (coerce "abcdaba" 'list)
+			:element-type 'standard-char
+			))
+	 (s2 (string-left-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
+
+(deftest string-left-trim.12
+  (let* ((s (make-array 7 :initial-contents (coerce "abcdaba" 'list)
+			:element-type 'base-char
+			))
+	 (s2 (string-left-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "cdaba")
diff --git a/ansi-tests/string-right-trim.lsp b/ansi-tests/string-right-trim.lsp
new file mode 100644
index 00000000..a9d20fa3
--- /dev/null
+++ b/ansi-tests/string-right-trim.lsp
@@ -0,0 +1,108 @@
+;-*- Mode:     Lisp -*-
+;;;; Author:   Paul Dietz
+;;;; Created:  Fri Oct  4 04:59:46 2002
+;;;; Contains: Tests of STRING-RIGHT-TRIM
+
+(in-package :cl-test)
+
+(deftest string-right-trim.1
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.2
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim '(#\a #\b) s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.3
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim #(#\a #\b) s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.4
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim (make-array 2 :initial-contents '(#\a #\b))
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.5
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim (make-array 2 :initial-contents '(#\a #\b)
+				      :element-type 'character)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.6
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim (make-array 2 :initial-contents '(#\a #\b)
+				      :element-type 'standard-char)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.7
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim (make-array 2 :initial-contents '(#\a #\b)
+				      :element-type 'base-char)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.8
+  (let* ((s (copy-seq "abcdaba"))
+	 (s2 (string-right-trim (make-array 2 :initial-contents '(#\a #\b #\c #\d)
+				      :element-type 'character
+				      :fill-pointer 2)
+			  s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.9
+  (let* ((s (make-array 7 :initial-contents (coerce "abcdaba" 'list)
+			:element-type 'character
+			))
+	 (s2 (string-right-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.10
+  (let* ((s (make-array 9 :initial-contents (coerce "abcdabadd" 'list)
+			:element-type 'character
+			:fill-pointer 7))
+	 (s2 (string-right-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.11
+  (let* ((s (make-array 7 :initial-contents (coerce "abcdaba" 'list)
+			:element-type 'standard-char
+			))
+	 (s2 (string-right-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
+
+(deftest string-right-trim.12
+  (let* ((s (make-array 7 :initial-contents (coerce "abcdaba" 'list)
+			:element-type 'base-char
+			))
+	 (s2 (string-right-trim "ab" s)))
+    (values s s2))
+  "abcdaba"
+  "abcd")
diff --git a/ansi-tests/string-trim.lsp b/ansi-tests/string-trim.lsp
index 45a61e8b..8bbef306 100644
--- a/ansi-tests/string-trim.lsp
+++ b/ansi-tests/string-trim.lsp
@@ -106,4 +106,3 @@
     (values s s2))
   "abcdaba"
   "cd")
-
-- 
GitLab