diff tests/farray-array.t @ 740:bcfd8383a918

farray.sh: implement "farray_merge()" to merge two sorted arrays
author Franz Glasner <fzglas.hg@dom66.de>
date Tue, 08 Oct 2024 09:04:42 +0200
parents 772e4999562b
children 5ba94d373199
line wrap: on
line diff
--- a/tests/farray-array.t	Mon Oct 07 23:39:01 2024 +0200
+++ b/tests/farray-array.t	Tue Oct 08 09:04:42 2024 +0200
@@ -1135,6 +1135,121 @@
   $ check_no_array_artifacts
 
 
+Merge
+=====
+
+  $ farray_create MERGED
+  $ farray_create INPUT1 s1 s2 s3
+  $ farray_create INPUT2
+  $ farray_merge MERGED INPUT1 INPUT2
+  $ farray_release INPUT1
+  $ farray_release INPUT2
+  $ farray_debug MERGED
+  DEBUG: array `MERGED' has length 3
+  DEBUG:   the items:
+  DEBUG:     1: `s1'
+  DEBUG:     2: `s2'
+  DEBUG:     3: `s3'
+  $ farray_release MERGED
+  $ check_no_array_artifacts
+
+  $ farray_create MERGED
+  $ farray_create INPUT1
+  $ farray_create INPUT2 S1 S2 S3 S4
+  $ farray_merge MERGED INPUT1 INPUT2
+  $ farray_release INPUT1
+  $ farray_release INPUT2
+  $ farray_debug MERGED
+  DEBUG: array `MERGED' has length 4
+  DEBUG:   the items:
+  DEBUG:     1: `S1'
+  DEBUG:     2: `S2'
+  DEBUG:     3: `S3'
+  DEBUG:     4: `S4'
+  $ farray_release MERGED
+  $ check_no_array_artifacts
+
+  $ farray_create MERGED
+  $ farray_create INPUT1 s1 s2 s3 s4
+  $ farray_create INPUT2 S1 S2 S3 S4
+  $ farray_merge MERGED INPUT1 INPUT2
+  $ farray_release INPUT1
+  $ farray_release INPUT2
+  $ farray_debug MERGED
+  DEBUG: array `MERGED' has length 8
+  DEBUG:   the items:
+  DEBUG:     1: `S1'
+  DEBUG:     2: `S2'
+  DEBUG:     3: `S3'
+  DEBUG:     4: `S4'
+  DEBUG:     5: `s1'
+  DEBUG:     6: `s2'
+  DEBUG:     7: `s3'
+  DEBUG:     8: `s4'
+  $ farray_release MERGED
+  $ check_no_array_artifacts
+
+  $ farray_create MERGED
+  $ farray_create INPUT1 s1 s2 s3 s4
+  $ farray_create INPUT2 S1 S2 S3 S4
+  $ farray_merge MERGED INPUT2 INPUT1
+  $ farray_release INPUT1
+  $ farray_release INPUT2
+  $ farray_debug MERGED
+  DEBUG: array `MERGED' has length 8
+  DEBUG:   the items:
+  DEBUG:     1: `S1'
+  DEBUG:     2: `S2'
+  DEBUG:     3: `S3'
+  DEBUG:     4: `S4'
+  DEBUG:     5: `s1'
+  DEBUG:     6: `s2'
+  DEBUG:     7: `s3'
+  DEBUG:     8: `s4'
+  $ farray_release MERGED
+  $ check_no_array_artifacts
+
+  $ farray_create MERGED
+  $ farray_create INPUT1 S1 S2 S3 S4
+  $ farray_create INPUT2 s1 s2 s3 s4
+  $ farray_merge "$MERGED" "$INPUT1" "$INPUT2"
+  $ farray_release INPUT1
+  $ farray_release INPUT2
+  $ farray_debug MERGED
+  DEBUG: array `MERGED' has length 8
+  DEBUG:   the items:
+  DEBUG:     1: `S1'
+  DEBUG:     2: `S2'
+  DEBUG:     3: `S3'
+  DEBUG:     4: `S4'
+  DEBUG:     5: `s1'
+  DEBUG:     6: `s2'
+  DEBUG:     7: `s3'
+  DEBUG:     8: `s4'
+  $ farray_release MERGED
+  $ check_no_array_artifacts
+
+  $ farray_create MERGED
+  $ farray_create INPUT1 S1 S2 S3 S4
+  $ farray_create INPUT2 s1 s2 s3 s4
+  $ farray_merge "$MERGED" "$INPUT2" "$INPUT1"
+  $ farray_release INPUT1
+  $ farray_release INPUT2
+  $ farray_debug MERGED
+  DEBUG: array `MERGED' has length 8
+  DEBUG:   the items:
+  DEBUG:     1: `S1'
+  DEBUG:     2: `S2'
+  DEBUG:     3: `S3'
+  DEBUG:     4: `S4'
+  DEBUG:     5: `s1'
+  DEBUG:     6: `s2'
+  DEBUG:     7: `s3'
+  DEBUG:     8: `s4'
+  $ farray_release MERGED
+  $ check_no_array_artifacts
+
+
 Generic Destruction
 ===================