diff tests/farray-array.t @ 593:f29f53749a1c

farray.sh: farray_get() and farray_tryget() now uses the _farr_make_index() function. So general indexes are supported now.
author Franz Glasner <fzglas.hg@dom66.de>
date Wed, 18 Sep 2024 15:57:31 +0200
parents dab62498e69c
children 4babcf9abc1a
line wrap: on
line diff
--- a/tests/farray-array.t	Wed Sep 18 15:56:47 2024 +0200
+++ b/tests/farray-array.t	Wed Sep 18 15:57:31 2024 +0200
@@ -2,6 +2,7 @@
 
 Shell is /bin/sh.
 
+
 Setup
 =====
 
@@ -76,6 +77,7 @@
   [1]
   $ check_no_array_artifacts
 
+
 Equality
 ========
 
@@ -117,6 +119,64 @@
   $ farray_destroy TEST2
   $ check_no_array_artifacts
 
+
+Get
+===
+
+  $ farray_create TEST 0 1 2 '3  4   5' $'" 678" \\\'910 ' 11
+
+  $ farray_get _var TEST 1
+  $ echo $_var
+  0
+  $ farray_tryget _var TEST 1
+  $ echo $_var
+  0
+  $ farray_get _var TEST -5
+  $ echo $_var
+  0
+  $ farray_tryget _var TEST -5
+  $ echo $_var
+  0
+  $ farray_get _var TEST 6
+  $ echo $_var
+  11
+  $ farray_tryget _var TEST 6
+  $ echo $_var
+  11
+  $ farray_get _var TEST 0
+  $ echo $_var
+  11
+  $ farray_tryget _var TEST 0
+  $ echo $_var
+  11
+  $ farray_get _var TEST 5
+  $ echo $_var
+  " 678" \'910
+  $ farray_tryget _var TEST 5
+  $ echo $_var
+  " 678" \'910
+  $ farray_get _var TEST -1
+  $ echo $_var
+  " 678" \'910
+  $ farray_tryget _var TEST -1
+  $ echo $_var
+  " 678" \'910
+
+  $ farray_tryget _var TEST -6
+  [1]
+  $ ( farray_get _var TEST -6 )
+  ERROR: array index out of bounds
+  [70]
+  $ farray_tryget _var TEST 7
+  [1]
+  $ ( farray_get _var TEST 7 )
+  ERROR: array index out of bounds
+  [70]
+
+  $ farray_destroy TEST
+  $ check_no_array_artifacts
+
+
 Splicing
 ========