workflow::test::array_lists_equal_p (public)
workflow::test::array_lists_equal_p list1 list2
Defined in packages/workflow/tcl/test/workflow-test-procs.tcl
Are the two lists equal?
- Parameters:
- list1 (required)
- list2 (required)
- Partial Call Graph (max 5 caller/called nodes):
- Testcases:
- No testcase defined.
Source code: set len1 [llength $list1] set len2 [llength $list2] if { $len1 != $len2 } { return 0 } if { $len1 == 1 } { # Single element list return [string equal [lindex $list1 0] [lindex $list2 0]] } elseif { ($len1 % 2)== 0 } { # List, treat as array-list array set array1 $list1 array set array2 $list2 foreach name [lsort [array names array1]] { if { ![info exists array2($name)] } { # Element in 1 doesn't exist in 2 return 0 } set elm1 $array1($name) set elm2 $array2($name) if { ![array_lists_equal_p $elm1 $elm2] } { return 0 } } } else { # List, treat as normal list foreach elm1 $list1 elm2 $list2 { if { ![array_lists_equal_p $elm1 $elm2] } { return 0 } } } return 1XQL Not present: Generic, PostgreSQL, Oracle