mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-05 03:30:24 +02:00
(string<?, string-ci<?, string<=?, string-ci<=?,
string>?, string-ci>?, string>=?, string-ci>=?): Check ordering is the same as char<? etc. Use a define-module to keep private test bits private.
This commit is contained in:
parent
170a4f8c2a
commit
4c2dc0f0b5
1 changed files with 94 additions and 3 deletions
|
@ -18,11 +18,22 @@
|
|||
;;;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
;;;; Boston, MA 02110-1301 USA
|
||||
|
||||
(use-modules (test-suite lib))
|
||||
(define-module (test-strings)
|
||||
#:use-module (test-suite lib))
|
||||
|
||||
|
||||
(define exception:read-only-string
|
||||
(cons 'misc-error "^string is read-only"))
|
||||
|
||||
;; Create a string from integer char values, eg. (string-ints 65) => "A"
|
||||
(define (string-ints . args)
|
||||
(apply string (map integer->char args)))
|
||||
|
||||
|
||||
;;
|
||||
;; string=?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string=?"
|
||||
|
||||
(pass-if "respects 1st parameter's string length"
|
||||
|
@ -41,6 +52,10 @@
|
|||
exception:wrong-type-arg
|
||||
(string=? "a" 'b))))
|
||||
|
||||
;;
|
||||
;; string<?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string<?"
|
||||
|
||||
(pass-if "respects string length"
|
||||
|
@ -55,7 +70,15 @@
|
|||
|
||||
(pass-if-exception "2nd argument symbol"
|
||||
exception:wrong-type-arg
|
||||
(string<? "a" 'b))))
|
||||
(string<? "a" 'b)))
|
||||
|
||||
(pass-if "same as char<?"
|
||||
(eq? (char<? (integer->char 0) (integer->char 255))
|
||||
(string<? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string-ci<?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string-ci<?"
|
||||
|
||||
|
@ -71,7 +94,75 @@
|
|||
|
||||
(pass-if-exception "2nd argument symbol"
|
||||
exception:wrong-type-arg
|
||||
(string-ci<? "a" 'b))))
|
||||
(string-ci<? "a" 'b)))
|
||||
|
||||
(pass-if "same as char-ci<?"
|
||||
(eq? (char-ci<? (integer->char 0) (integer->char 255))
|
||||
(string-ci<? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string<=?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string<=?"
|
||||
|
||||
(pass-if "same as char<=?"
|
||||
(eq? (char<=? (integer->char 0) (integer->char 255))
|
||||
(string<=? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string-ci<=?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string-ci<=?"
|
||||
|
||||
(pass-if "same as char-ci<=?"
|
||||
(eq? (char-ci<=? (integer->char 0) (integer->char 255))
|
||||
(string-ci<=? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string>?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string>?"
|
||||
|
||||
(pass-if "same as char>?"
|
||||
(eq? (char>? (integer->char 0) (integer->char 255))
|
||||
(string>? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string-ci>?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string-ci>?"
|
||||
|
||||
(pass-if "same as char-ci>?"
|
||||
(eq? (char-ci>? (integer->char 0) (integer->char 255))
|
||||
(string-ci>? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string>=?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string>=?"
|
||||
|
||||
(pass-if "same as char>=?"
|
||||
(eq? (char>=? (integer->char 0) (integer->char 255))
|
||||
(string>=? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string-ci>=?
|
||||
;;
|
||||
|
||||
(with-test-prefix "string-ci>=?"
|
||||
|
||||
(pass-if "same as char-ci>=?"
|
||||
(eq? (char-ci>=? (integer->char 0) (integer->char 255))
|
||||
(string-ci>=? (string-ints 0) (string-ints 255)))))
|
||||
|
||||
;;
|
||||
;; string-set!
|
||||
;;
|
||||
|
||||
(with-test-prefix "string-set!"
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue