1
0
mirror of https://github.com/janet-lang/janet synced 2025-10-07 20:12:27 +00:00

Add buffer/format-at

Move changes over from bundle-tools branch and add testing.
This commit is contained in:
Calvin Rose
2024-05-15 20:16:42 -05:00
parent c747e8d16c
commit 9946f3bdf4
2 changed files with 37 additions and 0 deletions

View File

@@ -162,5 +162,20 @@
(assert (deep= @"abc423" (buffer/push-at @"abc123" 3 "4"))
"buffer/push-at 3")
# buffer/format-at
(def start-buf (buffer/new-filled 100 (chr "x")))
(buffer/format-at start-buf 50 "aa%dbb" 32)
(assert (= (string start-buf) (string (string/repeat "x" 50) "aa32bb" (string/repeat "x" 44)))
"buffer/format-at 1")
(assert
(deep=
(buffer/format @"" "%j" [1 2 3 :a :b :c])
(buffer/format-at @"" 0 "%j" [1 2 3 :a :b :c]))
"buffer/format-at empty buffer")
(def buf @"xxxyyy")
(buffer/format-at buf -4 "xxx")
(assert (= (string buf) "xxxxxx") "buffer/format-at negative index")
(assert-error "expected index at to be in range [0, 0), got 1" (buffer/format-at @"" 1 "abc"))
(end-suite)