Re: [PATCH] test-suite: Add tests for `for-rdelim-in-port`-related functions.

Nala Ginrut <[email protected]>
Newsgroups gmane.lisp.guile.devel
Message-ID <CAPjoZoff_1S9dHEGdo1rZX33MRK8jJhjE-CVWwRhs+q5dn3bLg@mail.gmail.com>
The preferred activity in your design is more like for-each family, say,
handle the result inside the proc without return result. So maybe it should
be named as for-each-*-in-file, which is more understandable in the first
glance.
Best regards.

On Tue, Dec 17, 2024, 13:31 Adam Faiz <[email protected]> wrote:

> From 258d20a9665e6f845a167258c33374a00e734885 Mon Sep 17 00:00:00 2001
> From: AwesomeAdam54321 <[email protected]>
> Date: Tue, 17 Dec 2024 12:20:52 +0800
> Subject: [PATCH] test-suite: Add tests for `for-rdelim-in-port`-related
>  functions.
>
> * test-suite/tests/ports.test: Add test cases for
> `for-delimited-in-port` and `for-line-in-file`.
> ---
>  test-suite/tests/ports.test | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>
> diff --git a/test-suite/tests/ports.test b/test-suite/tests/ports.test
> index bec5e356c..15d515f1f 100644
> --- a/test-suite/tests/ports.test
> +++ b/test-suite/tests/ports.test
> @@ -2089,6 +2089,28 @@
>            (not (string-index (%search-load-path (basename (test-file)))
>                               #\\))))))
>
> +(let ((lst '())
> +      (lines '())
> +      (string "line1\nline2\nline3")
> +      (filename (test-file)))
> +  (call-with-input-string
> +      "A\0B\0C"
> +    (lambda (port)
> +      (pass-if "for-delimited-in-port returns true upon completion"
> +        (for-delimited-in-port port
> +                               (lambda (entry)
> +                                 (set! lst (cons entry lst)))
> +                               #:delims "\0")
> +        (equal? lst '("C" "B" "A")))))
> +  (let ((port (open-output-file filename)))
> +    (display string port)
> +    (close-port port))
> +  (pass-if "for-line-in-file returns true upon completion"
> +    (for-line-in-file filename
> +                      (lambda (line)
> +                        (set! lines (cons line lines))))
> +    (equal? lines '("line3" "line2" "line1"))))
> +
>  (delete-file (test-file))
>
>  ;;; Local Variables:
> --
> 2.46.0
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.