r4479: Auto commit for Debian build
authorKevin M. Rosenberg <kevin@rosenberg.net>
Tue, 15 Apr 2003 15:34:43 +0000 (15:34 +0000)
committerKevin M. Rosenberg <kevin@rosenberg.net>
Tue, 15 Apr 2003 15:34:43 +0000 (15:34 +0000)
base64-test.asd [deleted file]
base64-tests.lisp [new file with mode: 0644]
base64.asd
debian/changelog
debian/rules

diff --git a/base64-test.asd b/base64-test.asd
deleted file mode 100644 (file)
index db28e51..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
-;;;; *************************************************************************
-;;;; FILE IDENTIFICATION
-;;;;
-;;;; Name:          base64-test.asd
-;;;; Purpose:       ASDF definition file for Base64 Regression Test
-;;;; Programmer:    Kevin M. Rosenberg
-;;;; Date Started:  Jan 2003
-;;;;
-;;;; $Id: base64-test.asd,v 1.1 2003/01/12 20:25:26 kevin Exp $
-;;;; *************************************************************************
-
-(in-package :asdf)
-
-#+allegro (require 'tester)
-
-(defsystem :base64-test
-  :name "cl-base64-test"
-  :author "Kevin M. Rosenberg based on code by Juri Pakaste"
-  :version "1.0"
-  :maintainer "Kevin M. Rosenberg <kmr@debian.org>"
-  :licence "BSD-style"
-  :description "Regression test for cl-base64 package"
-  
-  :depends-on (:base64 :kmrcl #-allegro :tester)  
-  :components
-  ((:file "test")))
diff --git a/base64-tests.lisp b/base64-tests.lisp
new file mode 100644 (file)
index 0000000..3b7ec4a
--- /dev/null
@@ -0,0 +1,75 @@
+;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
+;;;; *************************************************************************
+;;;; FILE IDENTIFICATION
+;;;;
+;;;; Name:          test.lisp
+;;;; Purpose:       Regression tests for cl-base64
+;;;; Programmer:    Kevin M. Rosenberg
+;;;; Date Started:  Jan 2003
+;;;;
+;;;; $Id: base64-tests.lisp,v 1.1 2003/04/15 15:34:43 kevin Exp $
+;;;; *************************************************************************
+
+(in-package :cl-user)
+
+(defpackage #:base64-test
+  (:use #:cl #:kmrcl #:base64 #:util.test))
+
+(in-package #:base64-test)
+
+(defun test-base64 ()
+  (with-tests (:name "cl-base64 tests")
+    (do* ((length 0 (+ 3 length))
+         (string (make-string length) (make-string length))
+         (usb8 (make-usb8-array length) (make-usb8-array length))
+         (integer (random (expt 10 length)) (random (expt 10 length))))
+        ((>= length 300))
+    (dotimes (i length)
+      (declare (fixnum i))
+      (let ((code (random 256)))
+       (setf (schar string i) (code-char code))
+       (setf (aref usb8 i) code)))
+
+      (do* ((columns 0 (+ columns 4)))
+          ((> columns length))
+      ;; Test against cl-base64 routines
+       (test integer (base64-string-to-integer
+                                (integer-to-base64-string integer :columns columns)))
+       (test string (base64-string-to-string
+                               (string-to-base64-string string :columns columns))
+                     :test #'string=)
+      
+      ;; Test against AllegroCL built-in routines
+      #+allegro
+      (progn
+      (test integer (excl:base64-string-to-integer
+                              (integer-to-base64-string integer :columns columns)))
+      (test integer (base64-string-to-integer
+                              (excl:integer-to-base64-string integer)))
+      (test (string-to-base64-string string :columns columns)
+           (excl:usb8-array-to-base64-string usb8
+                                             (if (zerop columns)
+                                                 nil
+                                                 columns))
+           :test #'string=)
+      (test string (base64-string-to-string
+                   (excl:usb8-array-to-base64-string
+                    usb8
+                    (if (zerop columns)
+                        nil
+                        columns)))
+           :test #'string=))))))
+
+
+(defun time-routines ()
+  (let* ((str "abcdefghijklmnopqwertyu1234589jhwf2ff")
+        (usb8 (string-to-usb8-array str))
+        (int 12345678901234567890)
+        (n 50000))
+    (time-iterations n (integer-to-base64-string int))
+    (time-iterations n (excl:integer-to-base64-string int))
+    (time-iterations n (string-to-base64-string str))
+    (time-iterations n (excl:usb8-array-to-base64-string usb8))))
+
+      
+;;#+run-test (test-base64)
index 5d3dad5..5cfc477 100644 (file)
@@ -7,15 +7,20 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Dec 2002
 ;;;;
-;;;; $Id: base64.asd,v 1.3 2003/01/12 20:25:26 kevin Exp $
+;;;; $Id: base64.asd,v 1.4 2003/04/15 15:34:43 kevin Exp $
 ;;;; *************************************************************************
 
 (in-package :asdf)
 
+(cl:defpackage #:base64-system
+    (:use #:asdf #:cl))
+(cl:in-package #:base64-system)
+
+
 (defsystem :base64
   :name "cl-base64"
-  :author "Kevin M. Rosenberg based on code by Juri Pakaste"
-  :version "1.0"
+  :author "Kevin M. Rosenberg based on initial code by Juri Pakaste"
+  :version "3.1"
   :maintainer "Kevin M. Rosenberg <kmr@debian.org>"
   :licence "BSD-style"
   :description "Base64 encoding and decoding with URI support."
@@ -28,3 +33,7 @@
    (:file "encode" :depends-on ("package"))
    (:file "decode" :depends-on ("package"))
    ))
+
+(defmethod ((o test-op) (c (eql (find-system :base64))))
+  (or (load (compile-file "base64-tests.lisp"))
+         (error "test-op failed")))
index 7af6725..5e655b7 100644 (file)
@@ -1,3 +1,9 @@
+cl-base64 (3.1-1) unstable; urgency=low
+
+  * Implement asdf:test-op. Remove old base64-test.asd file.
+
+ -- Kevin M. Rosenberg <kmr@debian.org>  Tue, 15 Apr 2003 09:33:01 -0600
+
 cl-base64 (3.0.2-1) unstable; urgency=low
 
   * Change declarations from array to simple-array where feasible
index 3da7d80..986ee01 100755 (executable)
@@ -44,7 +44,6 @@ install: build
        dh_installdirs $(clc-systems) $(clc-base64)
        dh_install *.asd $(shell echo *.lisp) $(clc-base64)
        dh_link $(clc-base64)/base64.asd $(clc-systems)/base64.asd
-       dh_link $(clc-base64)/base64-test.asd $(clc-systems)/base64-test.asd
 
 # Build architecture-independent files here.
 binary-indep: build install