From ddc29a782eac30fcf4ff1f07677aa2896dc140e4 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 11 Nov 2012 22:33:28 +0100 Subject: Move base32 code to (guix base32). * guix/utils.scm (bytevector-quintet-ref, bytevector-quintet-ref-right, bytevector-quintet-length, bytevector-quintet-fold, bytevector-quintet-fold-right, make-bytevector->base32-string, %nix-base32-chars, %rfc4648-base32-chars, bytevector->base32-string, bytevector->nix-base32-string, bytevector-quintet-set!, bytevector-quintet-set-right!, base32-string-unfold, base32-string-unfold-right, make-base32-string->bytevector, base32-string->bytevector, nix-base32-string->bytevector): Move to... * guix/base32.scm: ... here. New file. * tests/utils.scm (%nix-hash, "bytevector->base32-string", "base32-string->bytevector", "nix-base32-string->bytevector", "sha256 & bytevector->base32-string"): Move to... * tests/base32.scm: ... here. New file * guix-download.in, guix/derivations.scm, guix/packages.scm, guix/snix.scm, tests/builders.scm, tests/derivations.scm: Adjust accordingly. * guix.scm (%public-modules): Add `base32'. --- tests/utils.scm | 58 --------------------------------------------------------- 1 file changed, 58 deletions(-) (limited to 'tests/utils.scm') diff --git a/tests/utils.scm b/tests/utils.scm index 1ced410d41..0a6e8a0833 100644 --- a/tests/utils.scm +++ b/tests/utils.scm @@ -16,59 +16,17 @@ ;;; You should have received a copy of the GNU General Public License ;;; along with Guix. If not, see . - (define-module (test-utils) #:use-module (guix utils) #:use-module ((guix store) #:select (store-path-package-name)) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) - #:use-module (srfi srfi-26) #:use-module (srfi srfi-64) #:use-module (rnrs bytevectors) - #:use-module (rnrs io ports) - #:use-module (ice-9 rdelim) - #:use-module (ice-9 popen) #:use-module (ice-9 match)) -(define %nix-hash - (or (getenv "NIX_HASH") - "nix-hash")) - (test-begin "utils") -(test-assert "bytevector->base32-string" - (fold (lambda (bv expected result) - (and result - (string=? (bytevector->base32-string bv) - expected))) - #t - - ;; Examples from RFC 4648. - (map string->utf8 '("" "f" "fo" "foo" "foob" "fooba" "foobar")) - '("" - "my" - "mzxq" - "mzxw6" - "mzxw6yq" - "mzxw6ytb" - "mzxw6ytboi"))) - -(test-assert "base32-string->bytevector" - (every (lambda (bv) - (equal? (base32-string->bytevector - (bytevector->base32-string bv)) - bv)) - ;; Examples from RFC 4648. - (map string->utf8 '("" "f" "fo" "foo" "foob" "fooba" "foobar")))) - -(test-assert "nix-base32-string->bytevector" - (every (lambda (bv) - (equal? (nix-base32-string->bytevector - (bytevector->nix-base32-string bv)) - bv)) - ;; Examples from RFC 4648. - (map string->utf8 '("" "f" "fo" "foo" "foob" "fooba" "foobar")))) - (test-assert "bytevector->base16-string->bytevector" (every (lambda (bv) (equal? (base16-string->bytevector @@ -76,22 +34,6 @@ bv)) (map string->utf8 '("" "f" "fo" "foo" "foob" "fooba" "foobar")))) -;; The following tests requires `nix-hash' in $PATH. -(test-skip (if (false-if-exception (system* %nix-hash "--version")) - 0 - 1)) - -(test-assert "sha256 & bytevector->nix-base32-string" - (let ((file (search-path %load-path "tests/test.drv"))) - (equal? (bytevector->nix-base32-string - (sha256 (call-with-input-file file get-bytevector-all))) - (let* ((c (format #f "~a --type sha256 --base32 --flat \"~a\"" - %nix-hash file)) - (p (open-input-pipe c)) - (l (read-line p))) - (close-pipe p) - l)))) - (test-assert "gnu-triplet->nix-system" (let ((samples '(("i586-gnu0.3" "i686-gnu") ("x86_64-unknown-linux-gnu" "x86_64-linux") -- cgit v1.2.3