;;; SPDX-License-Identifier: LGPL-3.0-or-later ;;; SPDX-FileCopyrightText: Copyright © 2010-2021 Tony Garnock-Jones #lang syndicate/test-implementation (test-case [(message-struct b (v)) (message-struct c (v)) (spawn #:name 'respondent (on (asserted ($ val (list _ (vector _) (b (c _)) (vector _) _))) ;; ^ exercises a corner-case in `extend-skeleton!` ;; that exposed why `(update-path path pop-count 0)` ;; was wrong, and `(update-path path 0 0)` was right. (send! 'ok)))] no-crashes) ;; ;; Trie steps: ;; ;; · ;; - () must be list/5 ;; pop 0, get 1 ;; - (1) must be vector/1 ;; pop 1, get 2 ;; - (2) must be b/1 ;; pop 0, get 0 ;; - (2 0) must be c/1 ;; pop 2, get 3 ;; - (3) must be vector/1