Commitccf67d29Recorded7 May 2026Repositorysigil-r7rs

Own scheme cxr tests in sigil-r7rs

Message

Move (scheme cxr) coverage into sigil-r7rs and refresh package metadata for the 0.16 line. sigil-r7rs now owns the standard R7RS module path while sigil-stdlib keeps only Sigil core helpers.

Verification with local Sigil redirects: sigil build --force; sigil test --no-color (24/24).

Changed
 package.sgl              |  5 +++--
 sigil.lock               |  6 +++---
 test/test-scheme-cxr.sgl | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 38 insertions(+), 5 deletions(-)
Diff
package.sglmodified
@@ -1,6 +1,7 @@
1
(package
2
name: "sigil-r7rs"
3
version: "0.9.1"
+3
version: "0.16.0"
+4
sigil: "^0.16"
5
description: "R7RS-small compatibility library for Sigil"
6
url: "https://codeberg.org/sigil/sigil-r7rs"
7
license: "BSD-3-Clause"
@@ -11,4 +12,4 @@
12
(config name: 'release output-dir: "build/release" debug?: #f optimize: 2))
13
14
dependencies: (list
14
(from-git url: "codeberg:sigil/sigil" package: "sigil-stdlib" version: "^0.9.0")))
+15
(from-git url: "codeberg:sigil/sigil" package: "sigil-stdlib" version: "^0.16")))
sigil.lockmodified
@@ -2,8 +2,8 @@
2
(lock
3
(package name: "sigil-stdlib"
4
url: "codeberg:sigil/sigil"
5
ref: "^0.9.0"
6
sha: "54f66e8ec446b65b75ab6f12454d2c0aa269f2c0"
+5
ref: "^0.16"
+6
sha: "0a84c0d5fc242b4ff2fb49675567cbd2c98d8009"
7
package-selector: "sigil-stdlib"
8
version: "0.9.1")
+8
version: "0.16.1")
9
)
test/test-scheme-cxr.sgladded
@@ -0,0 +1,32 @@
+1
;;; Tests for (scheme cxr) — R7RS-compliant 3- and 4-level car/cdr accessors.
+2
+3
(import (sigil test)
+4
(scheme cxr))
+5
+6
(test-group "scheme-cxr 3-level"
+7
(test "caaar" (assert-equal 1 (caaar '(((1)) 2))))
+8
(test "caadr" (assert-equal 2 (caadr '(1 (2 3) 4))))
+9
(test "cadar" (assert-equal 2 (cadar '((1 2 3) other))))
+10
(test "caddr" (assert-equal 3 (caddr '(1 2 3 4))))
+11
(test "cdaar" (assert-equal '(2 3) (cdaar '(((1 2 3)) other))))
+12
(test "cdadr" (assert-equal '(3 4) (cdadr '(1 (2 3 4) other))))
+13
(test "cddar" (assert-equal '(3) (cddar '((1 2 3) other))))
+14
(test "cdddr" (assert-equal '(4) (cdddr '(1 2 3 4)))))
+15
+16
(test-group "scheme-cxr 4-level"
+17
(test "caaaar" (assert-equal 'deep (caaaar '((((deep)))))))
+18
(test "caaadr" (assert-equal 'deep (caaadr '(x ((deep)) y))))
+19
(test "caadar" (assert-equal 'deep (caadar '((x (deep) y) other))))
+20
(test "caaddr" (assert-equal 'deep (caaddr '(x y (deep) z))))
+21
(test "cadaar" (assert-equal 'b (cadaar '(((a b c)) other))))
+22
(test "cadadr" (assert-equal 'b (cadadr '(x (a b c) other))))
+23
(test "caddar" (assert-equal 'c (caddar '((a b c) other))))
+24
(test "cadddr" (assert-equal 4 (cadddr '(1 2 3 4 5))))
+25
(test "cdaaar" (assert-equal '(2) (cdaaar '((((1 2))) other))))
+26
(test "cdaadr" (assert-equal '(2) (cdaadr '(x ((1 2)) y))))
+27
(test "cdadar" (assert-equal '(2) (cdadar '((x (1 2) y) other))))
+28
(test "cdaddr" (assert-equal '(b c) (cdaddr '(x y (a b c) z))))
+29
(test "cddaar" (assert-equal '(3) (cddaar '(((1 2 3)) other))))
+30
(test "cddadr" (assert-equal '(3) (cddadr '(x (1 2 3) other))))
+31
(test "cdddar" (assert-equal '(4) (cdddar '((1 2 3 4) other))))
+32
(test "cddddr" (assert-equal '(5 6) (cddddr '(1 2 3 4 5 6)))))