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

Mikael Djurfeldt <[email protected]>
Newsgroups gmane.lisp.guile.devel
Message-ID <CAA2XvwJnTgjA+3+c0hp7OP4AOxcSyGNhJf5qFSF3r+3j-WatHQ@mail.gmail.com>
Do others think this as well? To me, the shorter names which Adam selected
seem more palatable. Otherwise they get a bit long.

Den tis 17 dec. 2024 06:11Nala Ginrut <[email protected]> skrev:

> 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.