diff tests/farray-alist.t @ 607:c450fd0eaddb

farray.sh: Generalized indices for falist_tryget_{item,key,value}_at_index()
author Franz Glasner <fzglas.hg@dom66.de>
date Thu, 19 Sep 2024 12:21:58 +0200
parents 0ad7b2120e74
children c9ef2339618d
line wrap: on
line diff
--- a/tests/farray-alist.t	Thu Sep 19 12:15:33 2024 +0200
+++ b/tests/farray-alist.t	Thu Sep 19 12:21:58 2024 +0200
@@ -162,6 +162,39 @@
   $ check_no_alist_artifacts
 
 
+Valid and Invalid Indices
+
+  $ falist_create LIST
+  $ falist_set LIST 'KEY 1' 'VAL 1'
+  $ falist_set LIST 'KEY 2' 'VAL 2'
+  $ falist_set LIST 'KEY 3' 'VAL 3'
+
+  $ (falist_tryget_item_at_index _k _v LIST "")
+  ERROR: missing index
+  [70]
+
+  $ (falist_tryget_item_at_index _k _v LIST)
+  ERROR: missing index
+  [70]
+
+  $ falist_tryget_item_at_index _k _v LIST 4
+  [1]
+
+  $ falist_tryget_item_at_index _k _v LIST 0
+  $ printf '%s:%s' "$_k" "$_v"
+  KEY 3:VAL 3 (no-eol)
+
+  $ falist_tryget_item_at_index _k _v LIST -2
+  $ printf '%s:%s' "$_k" "$_v"
+  KEY 1:VAL 1 (no-eol)
+
+  $ falist_tryget_item_at_index _k _v LIST -3
+  [1]
+
+  $ falist_destroy LIST
+  $ check_no_alist_artifacts
+
+
 Deletion of keys
 ================