changelog shortlog graph tags branches files raw help

Mercurial > core / changeset: no more concat-source for std, zstd testing

changeset 436: 52608bbc3a7c
parent 435: 849bbe48e32d
child 437: 83f8623a6ec3
author: Richard Westhaver <ellis@rwest.io>
date: Tue, 11 Jun 2024 17:36:22 -0400
files: lisp/ffi/zstd/constants.lisp lisp/ffi/zstd/pkg.lisp lisp/ffi/zstd/tests.lisp lisp/lib/dat/pkg.lisp lisp/std/std.asd
description: no more concat-source for std, zstd testing
     1.1--- a/lisp/ffi/zstd/constants.lisp	Tue Jun 11 15:47:38 2024 -0400
     1.2+++ b/lisp/ffi/zstd/constants.lisp	Tue Jun 11 17:36:22 2024 -0400
     1.3@@ -62,11 +62,14 @@
     1.4          (zstd-error-externalsequences-invalid "ZSTD_error_externalSequences_invalid")
     1.5          (zstd-error-maxcode "ZSTD_error_maxCode")) 
     1.6         nil t)
     1.7- (:structure zstd-inbuffer-s ("struct ZSTD_inBuffer_s"
     1.8+ (:structure zstd-inbuffer ("struct ZSTD_inBuffer_s"
     1.9                               ((* t) src "const void*" "src")
    1.10                               (size-t size "size_t" "size")
    1.11-                              (size-t pos "size-t" "pos")))
    1.12- (:structure zstd-outbuffer-s ("struct ZSTD_outBuffer_s"
    1.13-                              ((* t) src "void*" "dst")
    1.14-                              (size-t size "size_t" "size")
    1.15-                              (size-t pos "size-t" "pos"))))
    1.16+                              (size-t pos "size-t" "pos"))
    1.17+             nil t)
    1.18+
    1.19+ (:structure zstd-outbuffer ("struct ZSTD_outBuffer_s"
    1.20+                               ((* t) dst "void*" "dst")
    1.21+                               (size-t size "size_t" "size")
    1.22+                               (size-t pos "size-t" "pos"))
    1.23+             nil t))
     2.1--- a/lisp/ffi/zstd/pkg.lisp	Tue Jun 11 15:47:38 2024 -0400
     2.2+++ b/lisp/ffi/zstd/pkg.lisp	Tue Jun 11 17:36:22 2024 -0400
     2.3@@ -147,18 +147,6 @@
     2.4   (src (* t)) (src-size size-t))
     2.5 
     2.6 ;;; Streaming API
     2.7-(define-alien-type zstd-inbuffer
     2.8-    (struct zstd-inbuffer-s
     2.9-            (src (* t))
    2.10-            (size size-t)
    2.11-            (pos size-t)))
    2.12-
    2.13-(define-alien-type zstd-outbuffer
    2.14-    (struct zstd-outbuffer-s
    2.15-            (dst (* t))
    2.16-            (size size-t)
    2.17-            (pos size-t)))
    2.18-
    2.19 (define-alien-type zstd-cstream zstd-cctx)
    2.20 
    2.21 (define-alien-routine "ZSTD_createCStream" (* zstd-cstream))
     3.1--- a/lisp/ffi/zstd/tests.lisp	Tue Jun 11 15:47:38 2024 -0400
     3.2+++ b/lisp/ffi/zstd/tests.lisp	Tue Jun 11 17:36:22 2024 -0400
     3.3@@ -40,17 +40,33 @@
     3.4 (deftest streaming ()
     3.5   "Test the Zstd Streaming API functions."
     3.6   (is (< (zstd-cstreaminsize) (zstd-cstreamoutsize)))
     3.7-  (with-alien ((in (* zstd-inbuffer) (zstd::allocate-zstd-inbuffer-s))
     3.8-               (out (* zstd-outbuffer) (zstd::allocate-zstd-outbuffer-s))
     3.9+  (with-alien ((in (* zstd-inbuffer) (zstd::allocate-zstd-inbuffer))
    3.10+               (out (* zstd-outbuffer) (zstd::allocate-zstd-outbuffer))
    3.11                (cst (* zstd-cstream) (zstd::zstd-createcstream))
    3.12                (dst (* zstd-dstream) (zstd::zstd-createdstream)))
    3.13-    (with-zstd-cstream (cs cst)
    3.14-      (is (zerop (zstd::zstd-initcstream cst (zstd-defaultclevel))))
    3.15-      (with-zstd-dstream (ds dst)
    3.16-        (is (zerop (zstd::zstd-initdstream dst)))
    3.17-        (zstd-compressstream cst out in)
    3.18-        (is (zerop (zstd-compressstream2 cst out in 0)))
    3.19-        (is (zerop (zstd-iserror (zstd-decompressstream dst out in))))))))
    3.20+    (let* ((str "this is a test yad ayd ay aya dayd ayd ada")
    3.21+           (len (length str))
    3.22+           (out-array (make-array len :adjustable t)))
    3.23+      (setf (zstd::zstd-inbuffer-src in) (make-alien-string str)
    3.24+            (zstd::zstd-inbuffer-size in) len)
    3.25+      (with-zstd-cstream (cs cst)
    3.26+        (is (zerop (zstd::zstd-initcstream cst (zstd-defaultclevel))))
    3.27+        (with-zstd-dstream (ds dst)
    3.28+          (is (zerop (zstd::zstd-initdstream dst)))
    3.29+          ;; (setf (zstd::zstd-outbuffer-dst out) (make-alien-string str))
    3.30+          (zstd-compressstream cst out in)
    3.31+          (zstd::zstd-flushstream cst out)
    3.32+          (zstd::zstd-endstream cst out)
    3.33+          (clone-octets-from-alien (cast (zstd::zstd-outbuffer-dst out)
    3.34+                                         (* (unsigned 8)))
    3.35+                                   out-array
    3.36+                                   (zstd::zstd-outbuffer-size out))
    3.37+          ;; (is (zerop (zstd-compressstream2 cst out in 0)))
    3.38+          (zstd-decompressstream dst out in)
    3.39+          (is (string-equal
    3.40+               (cast (zstd::zstd-inbuffer-src in)
    3.41+                     c-string)
    3.42+               str)))))))
    3.43 
    3.44 ;; simple-dictionary
    3.45 ;; builk-dictionary
     4.1--- a/lisp/lib/dat/pkg.lisp	Tue Jun 11 15:47:38 2024 -0400
     4.2+++ b/lisp/lib/dat/pkg.lisp	Tue Jun 11 17:36:22 2024 -0400
     4.3@@ -169,7 +169,8 @@
     4.4    :load-mime-info :update-mime-database
     4.5    :mime-magic :mime-magic-offset :mime-magic-type :mime-magic-value
     4.6    :mime-type :mime-type-name :mime-type-superclasses :mime-type-glob
     4.7-   :mime-type-glob :mime-type-magic))
     4.8+   :mime-type-glob :mime-type-magic
     4.9+   :mime :get-mime :get-mime*))
    4.10 
    4.11 (defpackage :dat/bencode
    4.12   (:use :cl :std :dat/proto :sb-gray)
     5.1--- a/lisp/std/std.asd	Tue Jun 11 15:47:38 2024 -0400
     5.2+++ b/lisp/std/std.asd	Tue Jun 11 17:36:22 2024 -0400
     5.3@@ -48,7 +48,7 @@
     5.4                (:file "seq")
     5.5                (:file "sys"))
     5.6   :build-pathname "std"
     5.7-  :build-operation monolithic-concatenate-source-op
     5.8+  :build-operation compile-bundle-op
     5.9   :in-order-to ((test-op (test-op "std/tests"))))
    5.10 
    5.11 (register-system-packages "std" '(:std))